diff --git a/app/src/test/java/org/hyperledger/besu/cli/CommandTestAbstract.java b/app/src/test/java/org/hyperledger/besu/cli/CommandTestAbstract.java index 5580990c2a8..83a0d97ce8c 100644 --- a/app/src/test/java/org/hyperledger/besu/cli/CommandTestAbstract.java +++ b/app/src/test/java/org/hyperledger/besu/cli/CommandTestAbstract.java @@ -18,10 +18,6 @@ import static org.assertj.core.api.Assertions.assertThat; import static org.hyperledger.besu.cli.util.CommandLineUtils.DEPENDENCY_WARNING_MSG; import static org.mockito.ArgumentMatchers.any; -import static org.mockito.ArgumentMatchers.anyBoolean; -import static org.mockito.ArgumentMatchers.anyInt; -import static org.mockito.ArgumentMatchers.anyLong; -import static org.mockito.ArgumentMatchers.anyString; import static org.mockito.ArgumentMatchers.eq; import static org.mockito.Mockito.atLeast; import static org.mockito.Mockito.lenient; @@ -127,6 +123,7 @@ import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.Answers; import org.mockito.ArgumentCaptor; import org.mockito.Captor; import org.mockito.Mock; @@ -186,12 +183,20 @@ public abstract class CommandTestAbstract { private final HashMap environment = new HashMap<>(); private final List besuCommands = new ArrayList<>(); - private KeyPair keyPair; + + private static final KeyPair keyPair; + + static { + final SignatureAlgorithm signatureAlgorithm = SignatureAlgorithmFactory.getInstance(); + final Bytes32 keyPairPrvKey = + Bytes32.fromHexString("0xf7a58d5e755d51fa2f6206e91dd574597c73248aaf946ec1964b8c6268d6207b"); + keyPair = signatureAlgorithm.createKeyPair(signatureAlgorithm.createPrivateKey(keyPairPrvKey)); + } protected static final RpcEndpointServiceImpl rpcEndpointServiceImpl = new RpcEndpointServiceImpl(); - @Mock(lenient = true) + @Mock(lenient = true, answer = Answers.RETURNS_SELF) protected RunnerBuilder mockRunnerBuilder; @Mock protected Runner mockRunner; @@ -199,7 +204,7 @@ public abstract class CommandTestAbstract { @Mock(lenient = true) protected BesuController.Builder mockControllerBuilderFactory; - @Mock(lenient = true) + @Mock(lenient = true, answer = Answers.RETURNS_SELF) protected BesuControllerBuilder mockControllerBuilder; @Mock(lenient = true) @@ -272,42 +277,6 @@ public abstract class CommandTestAbstract { public void initMocks() throws Exception { when(mockControllerBuilderFactory.fromEthNetworkConfig(any(), any())) .thenReturn(mockControllerBuilder); - when(mockControllerBuilder.synchronizerConfiguration(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.ethProtocolConfiguration(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.transactionPoolConfiguration(any())) - .thenReturn(mockControllerBuilder); - when(mockControllerBuilder.dataDirectory(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.miningParameters(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.nodeKey(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.metricsSystem(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.messagePermissioningProviders(any())) - .thenReturn(mockControllerBuilder); - when(mockControllerBuilder.clock(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.isRevertReasonEnabled(false)).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.isParallelTxProcessingEnabled(false)) - .thenReturn(mockControllerBuilder); - when(mockControllerBuilder.isEarlyRoundChangeEnabled(false)).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.storageProvider(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.requiredBlocks(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.reorgLoggingThreshold(anyLong())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.dataStorageConfiguration(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.evmConfiguration(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.networkConfiguration(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.randomPeerPriority(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.maxPeers(anyInt())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.chainPruningConfiguration(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.maxPeers(anyInt())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.maxRemotelyInitiatedPeers(anyInt())) - .thenReturn(mockControllerBuilder); - when(mockControllerBuilder.besuComponent(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.balConfiguration(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.cacheLastBlocks(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.cacheLastBlockHeaders(any())).thenReturn(mockControllerBuilder); - when(mockControllerBuilder.isCacheLastBlockHeadersPreloadEnabled(any())) - .thenReturn(mockControllerBuilder); - when(mockControllerBuilder.genesisStateHashCacheEnabled(any())) - .thenReturn(mockControllerBuilder); - when(mockControllerBuilder.apiConfiguration(any())).thenReturn(mockControllerBuilder); when(mockControllerBuilder.build()).thenReturn(mockController); lenient().when(mockController.getProtocolManager()).thenReturn(mockEthProtocolManager); lenient().when(mockController.getProtocolSchedule()).thenReturn(mockProtocolSchedule); @@ -324,56 +293,9 @@ public void initMocks() throws Exception { when(mockController.getTransactionPool()).thenReturn(mockTransactionPool); when(mockController.getStorageProvider()).thenReturn(storageProvider); - when(mockRunnerBuilder.vertx(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.besuController(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.discoveryEnabled(anyBoolean())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.ethNetworkConfig(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.networkingConfiguration(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.p2pAdvertisedHost(anyString())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.p2pListenPort(anyInt())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.p2pListenInterface(anyString())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.p2pAdvertisedHostIpv6(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.p2pListenInterfaceIpv6(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.p2pListenPortIpv6(anyInt())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.permissioningConfiguration(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.p2pEnabled(anyBoolean())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.natMethod(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.natMethodFallbackEnabled(anyBoolean())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.jsonRpcConfiguration(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.engineJsonRpcConfiguration(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.graphQLConfiguration(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.webSocketConfiguration(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.jsonRpcIpcConfiguration(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.inProcessRpcConfiguration(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.apiConfiguration(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.dataDir(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.bannedNodeIds(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.metricsSystem(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.permissioningService(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.transactionValidatorService(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.metricsConfiguration(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.staticNodes(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.identityString(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.besuPluginContext(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.autoLogBloomCaching(anyBoolean())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.pidPath(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.ethstatsOptions(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.storageProvider(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.rpcEndpointService(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.apiConfiguration(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.enodeDnsConfiguration(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.allowedSubnets(any())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.poaDiscoveryRetryBootnodes(anyBoolean())).thenReturn(mockRunnerBuilder); - when(mockRunnerBuilder.preferIpv6Outbound(anyBoolean())).thenReturn(mockRunnerBuilder); when(mockRunnerBuilder.build()).thenReturn(mockRunner); when(mockBesuComponent.getMetricsSystem()).thenReturn(new NoOpMetricsSystem()); - final SignatureAlgorithm signatureAlgorithm = SignatureAlgorithmFactory.getInstance(); - - final Bytes32 keyPairPrvKey = - Bytes32.fromHexString("0xf7a58d5e755d51fa2f6206e91dd574597c73248aaf946ec1964b8c6268d6207b"); - keyPair = signatureAlgorithm.createKeyPair(signatureAlgorithm.createPrivateKey(keyPairPrvKey)); - lenient().when(nodeKey.getPublicKey()).thenReturn(keyPair.getPublicKey()); lenient() @@ -447,8 +369,6 @@ protected TestBesuCommand parseCommand( final TestType testType, final InputStream in, final String... args) { // turn off ansi usage globally in picocli System.setProperty("picocli.ansi", "false"); - // reset GlobalOpenTelemetry - GlobalOpenTelemetry.resetForTest(); final TestBesuCommand besuCommand = getTestBesuCommand(testType); besuCommands.add(besuCommand);