You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by ma...@apache.org on 2022/10/26 14:49:29 UTC
[nifi] branch main updated: NIFI-10697 Refactored nifi-toolkit tests to use JUnit 5
This is an automated email from the ASF dual-hosted git repository.
mattyb149 pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi.git
The following commit(s) were added to refs/heads/main by this push:
new 969e2dc7cc NIFI-10697 Refactored nifi-toolkit tests to use JUnit 5
969e2dc7cc is described below
commit 969e2dc7ccf7bf2c77c2f1d82ef497374cd2f52e
Author: exceptionfactory <ex...@apache.org>
AuthorDate: Tue Oct 25 13:53:55 2022 -0500
NIFI-10697 Refactored nifi-toolkit tests to use JUnit 5
- Removed RegistryManualIT for nifi-toolkit-cli
- Simplified EncryptConfigMainTest to avoid duplication with ConfigEncryptionToolTest
Signed-off-by: Matthew Burgess <ma...@apache.org>
This closes #6579
---
.../apache/nifi/toolkit/cli/TestCLICompleter.java | 16 +-
.../toolkit/cli/impl/client/TestClientTimeout.java | 31 +-
.../cli/impl/client/nifi/TestProcessGroupBox.java | 24 +-
.../cli/impl/command/TestCommandProcessor.java | 11 +-
.../impl/command/registry/RegistryManualIT.java | 363 ---------------------
.../command/registry/tenant/TestTenantHelper.java | 27 +-
.../toolkit/cli/impl/result/TestBucketsResult.java | 23 +-
.../TestRegisteredFlowSnapshotMetadataResult.java | 23 +-
.../cli/impl/result/TestRegistryClientResult.java | 24 +-
.../cli/impl/result/TestVersionedFlowsResult.java | 38 +--
.../impl/result/writer/TestDynamicTableWriter.java | 29 +-
.../encryptconfig/EncryptConfigMainTest.groovy | 222 +------------
.../nifi/toolkit/FlowAnalyzerDriverTest.java | 4 +-
.../flowfile/TestRepairCorruptedFileEndings.java | 28 +-
.../apache/nifi/toolkit/s2s/DataPacketDtoTest.java | 6 +-
.../nifi/toolkit/s2s/DataPacketImplTest.java | 10 +-
.../nifi/toolkit/s2s/SiteToSiteCliMainTest.java | 12 +-
.../nifi/toolkit/s2s/SiteToSiteReceiverTest.java | 18 +-
.../nifi/toolkit/s2s/SiteToSiteSenderTest.java | 54 +--
.../nifi/toolkit/tls/SystemExitCapturer.java | 16 +-
.../nifi/toolkit/tls/TlsToolkitMainTest.java | 22 +-
.../tls/configuration/InstanceDefinitionTest.java | 17 +-
.../tls/configuration/InstanceIdentifierTest.java | 34 +-
.../NifiPropertiesTlsClientConfigWriterTest.java | 22 +-
.../tls/properties/NifiPropertiesWriterTest.java | 14 +-
.../tls/service/TlsCertificateAuthorityTest.java | 50 +--
...sCertificateAuthorityClientCommandLineTest.java | 33 +-
.../TlsCertificateSigningRequestPerformerTest.java | 84 ++---
...CertificateAuthorityServiceCommandLineTest.java | 16 +-
.../TlsCertificateAuthorityServiceHandlerTest.java | 50 ++-
.../TlsToolkitStandaloneCommandLineTest.java | 140 +++-----
.../tls/standalone/TlsToolkitStandaloneTest.java | 24 +-
.../status/TlsToolkitGetStatusCommandLineTest.java | 118 +++----
33 files changed, 438 insertions(+), 1165 deletions(-)
diff --git a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/TestCLICompleter.java b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/TestCLICompleter.java
index b0ebac143f..044ed792de 100644
--- a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/TestCLICompleter.java
+++ b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/TestCLICompleter.java
@@ -16,7 +16,6 @@
*/
package org.apache.nifi.toolkit.cli;
-import org.apache.commons.lang3.SystemUtils;
import org.apache.nifi.registry.client.NiFiRegistryClient;
import org.apache.nifi.toolkit.cli.api.ClientFactory;
import org.apache.nifi.toolkit.cli.api.Command;
@@ -35,9 +34,10 @@ import org.apache.nifi.util.StringUtils;
import org.jline.reader.Candidate;
import org.jline.reader.LineReader;
import org.jline.reader.ParsedLine;
-import org.junit.Assume;
-import org.junit.BeforeClass;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledOnOs;
+import org.junit.jupiter.api.condition.OS;
import org.mockito.Mockito;
import java.util.ArrayList;
@@ -46,17 +46,17 @@ import java.util.Collections;
import java.util.List;
import java.util.Map;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+@DisabledOnOs(OS.WINDOWS)
public class TestCLICompleter {
private static CLICompleter completer;
private static LineReader lineReader;
- @BeforeClass
+ @BeforeAll
public static void setupCompleter() {
- Assume.assumeTrue("Test only runs on *nix", !SystemUtils.IS_OS_WINDOWS);
final Session session = new InMemorySession();
final ClientFactory<NiFiClient> niFiClientFactory = new NiFiClientFactory();
final ClientFactory<NiFiRegistryClient> nifiRegClientFactory = new NiFiRegistryClientFactory();
diff --git a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/client/TestClientTimeout.java b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/client/TestClientTimeout.java
index 60d5afbc6f..002d7d78b5 100644
--- a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/client/TestClientTimeout.java
+++ b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/client/TestClientTimeout.java
@@ -28,10 +28,9 @@ import org.apache.nifi.toolkit.cli.impl.command.nifi.AbstractNiFiCommand;
import org.apache.nifi.toolkit.cli.impl.context.StandardContext;
import org.apache.nifi.toolkit.cli.impl.session.InMemorySession;
import org.glassfish.jersey.client.ClientProperties;
-import org.junit.After;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import org.mockito.Mockito;
import javax.ws.rs.client.Client;
@@ -39,16 +38,17 @@ import java.util.Collections;
import java.util.Map;
import java.util.Properties;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+
public class TestClientTimeout {
private Context context;
- private ClientFactory<NiFiClient> nifiClientFactory;
- private ClientFactory<NiFiRegistryClient> nifiRegClientFactory;
private final Client[] client = new Client[1];
- @Before
+ @BeforeEach
public void setUp() throws Exception {
- nifiClientFactory = Mockito.spy(new NiFiClientFactory());
+ final ClientFactory<NiFiClient> nifiClientFactory = Mockito.spy(new NiFiClientFactory());
Mockito.doAnswer(invocationOnMock -> {
final JerseyNiFiClient nifiClient = Mockito.spy((JerseyNiFiClient) invocationOnMock.callRealMethod());
Mockito.doNothing().when(nifiClient).close(); // avoid closing the client before getting the configuration in the test method
@@ -56,7 +56,7 @@ public class TestClientTimeout {
return nifiClient;
}).when(nifiClientFactory).createClient(Mockito.any(Properties.class));
- nifiRegClientFactory = Mockito.mock(NiFiRegistryClientFactory.class);
+ final ClientFactory<NiFiRegistryClient> nifiRegClientFactory = Mockito.mock(NiFiRegistryClientFactory.class);
context = new StandardContext.Builder()
.output(System.out)
@@ -67,13 +67,10 @@ public class TestClientTimeout {
.build();
}
- @After
+ @AfterEach
public void tearDown() {
if (client[0] != null) {
- try {
- client[0].close();
- } catch (Throwable th) {
- }
+ client[0].close();
client[0] = null;
}
}
@@ -98,10 +95,10 @@ public class TestClientTimeout {
final CommandProcessor processor = new CommandProcessor(Collections.singletonMap("test", command), Collections.emptyMap(), context);
processor.process(new String[] { "test", "-cto", "1", "-rto", "2", "-baseUrl", "http://localhost:9999" });
- Assert.assertNotNull(client[0]);
+ assertNotNull(client[0]);
final Map<String, Object> clientProperties = client[0].getConfiguration().getProperties();
- Assert.assertEquals(1, clientProperties.get(ClientProperties.CONNECT_TIMEOUT));
- Assert.assertEquals(2, clientProperties.get(ClientProperties.READ_TIMEOUT));
+ assertEquals(1, clientProperties.get(ClientProperties.CONNECT_TIMEOUT));
+ assertEquals(2, clientProperties.get(ClientProperties.READ_TIMEOUT));
}
}
diff --git a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/client/nifi/TestProcessGroupBox.java b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/client/nifi/TestProcessGroupBox.java
index 762c9e709e..298a094b2e 100644
--- a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/client/nifi/TestProcessGroupBox.java
+++ b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/client/nifi/TestProcessGroupBox.java
@@ -16,8 +16,10 @@
*/
package org.apache.nifi.toolkit.cli.impl.client.nifi;
-import org.junit.Assert;
-import org.junit.Test;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+import org.junit.jupiter.api.Test;
public class TestProcessGroupBox {
@@ -25,62 +27,62 @@ public class TestProcessGroupBox {
public void testIntersectsWhenCompletelyAbove() {
final ProcessGroupBox pg1 = new ProcessGroupBox(0, 0);
final ProcessGroupBox pg2 = new ProcessGroupBox(0, ProcessGroupBox.PG_SIZE_HEIGHT * 2 + 10);
- Assert.assertFalse(pg1.intersects(pg2));
+ assertFalse(pg1.intersects(pg2));
}
@Test
public void testIntersectsWhenCompletelyBelow() {
final ProcessGroupBox pg1 = new ProcessGroupBox(0, ProcessGroupBox.PG_SIZE_HEIGHT * 2 + 10);
final ProcessGroupBox pg2 = new ProcessGroupBox(0, 0);
- Assert.assertFalse(pg1.intersects(pg2));
+ assertFalse(pg1.intersects(pg2));
}
@Test
public void testIntersectsWhenCompletelyLeft() {
final ProcessGroupBox pg1 = new ProcessGroupBox(0, 0);
final ProcessGroupBox pg2 = new ProcessGroupBox(ProcessGroupBox.PG_SIZE_WIDTH * 2 + 10,0);
- Assert.assertFalse(pg1.intersects(pg2));
+ assertFalse(pg1.intersects(pg2));
}
@Test
public void testIntersectsWhenCompletelyRight() {
final ProcessGroupBox pg1 = new ProcessGroupBox(ProcessGroupBox.PG_SIZE_WIDTH * 2 + 10,0);
final ProcessGroupBox pg2 = new ProcessGroupBox(0,0);
- Assert.assertFalse(pg1.intersects(pg2));
+ assertFalse(pg1.intersects(pg2));
}
@Test
public void testIntersectsWhenCompletelyOverlapping() {
final ProcessGroupBox pg1 = new ProcessGroupBox(0,0);
final ProcessGroupBox pg2 = new ProcessGroupBox(0,0);
- Assert.assertTrue(pg1.intersects(pg2));
+ assertTrue(pg1.intersects(pg2));
}
@Test
public void testIntersectsWhenPartiallyOverlappingVertically() {
final ProcessGroupBox pg1 = new ProcessGroupBox(0,0);
final ProcessGroupBox pg2 = new ProcessGroupBox(0,ProcessGroupBox.PG_SIZE_HEIGHT / 2);
- Assert.assertTrue(pg1.intersects(pg2));
+ assertTrue(pg1.intersects(pg2));
}
@Test
public void testIntersectsWhenBottomAndTopSame() {
final ProcessGroupBox pg1 = new ProcessGroupBox(0,0);
final ProcessGroupBox pg2 = new ProcessGroupBox(0,ProcessGroupBox.PG_SIZE_HEIGHT);
- Assert.assertTrue(pg1.intersects(pg2));
+ assertTrue(pg1.intersects(pg2));
}
@Test
public void testIntersectsWhenPartiallyOverlappingHorizontally() {
final ProcessGroupBox pg1 = new ProcessGroupBox(0,0);
final ProcessGroupBox pg2 = new ProcessGroupBox(ProcessGroupBox.PG_SIZE_WIDTH / 2,0);
- Assert.assertTrue(pg1.intersects(pg2));
+ assertTrue(pg1.intersects(pg2));
}
@Test
public void testIntersectsWhenRightAndLeftSame() {
final ProcessGroupBox pg1 = new ProcessGroupBox(0,0);
final ProcessGroupBox pg2 = new ProcessGroupBox(ProcessGroupBox.PG_SIZE_WIDTH,0);
- Assert.assertTrue(pg1.intersects(pg2));
+ assertTrue(pg1.intersects(pg2));
}
}
diff --git a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/command/TestCommandProcessor.java b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/command/TestCommandProcessor.java
index 465b3afb90..09f3697eb7 100644
--- a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/command/TestCommandProcessor.java
+++ b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/command/TestCommandProcessor.java
@@ -19,14 +19,15 @@ package org.apache.nifi.toolkit.cli.impl.command;
import org.apache.commons.cli.CommandLine;
import org.apache.commons.cli.ParseException;
import org.apache.nifi.toolkit.cli.api.Context;
-import org.junit.Assert;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import org.mockito.Mockito;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
public class TestCommandProcessor {
@Test
@@ -53,7 +54,7 @@ public class TestCommandProcessor {
command);
final CommandLine cli1 = command.getCli();
- Assert.assertEquals("foo1", cli1.getOptionValue(CommandOption.BUCKET_ID.getShortName()));
+ assertEquals("foo1", cli1.getOptionValue(CommandOption.BUCKET_ID.getShortName()));
// run it again and &2 should be resolved to foo1
processor.processCommand(
@@ -64,7 +65,7 @@ public class TestCommandProcessor {
command);
final CommandLine cli2 = command.getCli();
- Assert.assertEquals("foo2", cli2.getOptionValue(CommandOption.BUCKET_ID.getShortName()));
+ assertEquals("foo2", cli2.getOptionValue(CommandOption.BUCKET_ID.getShortName()));
// run it again and &1 should be resolved to foo1
processor.processCommand(
@@ -77,7 +78,7 @@ public class TestCommandProcessor {
command);
final CommandLine cli3 = command.getCli();
- Assert.assertEquals("foo1", cli3.getOptionValue(CommandOption.FLOW_ID.getShortName()));
+ assertEquals("foo1", cli3.getOptionValue(CommandOption.FLOW_ID.getShortName()));
}
}
diff --git a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/command/registry/RegistryManualIT.java b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/command/registry/RegistryManualIT.java
deleted file mode 100644
index 57b031ed2a..0000000000
--- a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/command/registry/RegistryManualIT.java
+++ /dev/null
@@ -1,363 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.nifi.toolkit.cli.impl.command.registry;
-
-import org.apache.nifi.toolkit.cli.CLIMain;
-import org.apache.nifi.util.StringUtils;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Ignore;
-import org.junit.Test;
-
-import java.io.BufferedReader;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.PrintStream;
-import java.util.StringJoiner;
-import java.util.concurrent.atomic.AtomicReference;
-import java.util.function.Consumer;
-
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-
-public class RegistryManualIT {
- public static final String TRUSTSTORE = "";
- public static final String TRUSTSTORE_PASSWD = "";
-
- public static final String KEYSTORE = "";
- public static final String KEYSTORE_PASSWD = "";
-
- private String basicSettings = "--baseUrl https://localhost:18443 --verbose";
- private String securitySettings = "--truststore " + TRUSTSTORE +
- " --truststoreType jks --truststorePasswd " + TRUSTSTORE_PASSWD +
- " --keystore " + KEYSTORE +
- " --keystorePasswd " + KEYSTORE_PASSWD +
- " --keystoreType PKCS12";
-
- private static final String TEST_USER_NAME = "testUser";
- private static final String TEST_USER_GROUP_NAME = "testUserGroup";
- private String testUserId;
- private String testUserGroupId;
- private static final String TEST_BUCKET_NAME = "testBucket";
- private String testBucketId;
- private PrintStream originalStdOut;
- private ByteArrayOutputStream out;
-
- @Before
- public void setUp() throws Exception {
- assertFalse("truststore not set", StringUtils.isBlank(TRUSTSTORE));
- assertFalse("truststorePasswd not set", StringUtils.isBlank(TRUSTSTORE_PASSWD));
- assertFalse("keystore not set", StringUtils.isBlank(KEYSTORE));
- assertFalse("keystorePassed not set", StringUtils.isBlank(KEYSTORE_PASSWD));
- }
-
- @After
- public void tearDown() throws Exception {
- resetStdOut();
- }
-
- @Ignore("Run first and only once")
- @Test
- public void testCreateUser() throws Exception {
- String userName = TEST_USER_NAME;
-
- runRegistryCommand("create-user",
- "--userName " + userName
- );
-
- testListUsers(userName);
- }
-
- @Ignore("Run first and only once")
- @Test
- public void testCreateUseGroup() throws Exception {
- String expectedUserGroup = TEST_USER_GROUP_NAME;
-
- runRegistryCommand("create-user-group",
- "--userGroupName " + expectedUserGroup +
- " --userNameList " + TEST_USER_NAME +
- " --userIdList " + testUserId
- );
-
- testListUserGroup(expectedUserGroup);
- }
-
- @Ignore("Run first and only once")
- @Test
- public void testCreateBucket() throws Exception {
- runRegistryCommand("create-bucket", "--bucketName " + TEST_BUCKET_NAME);
- testListBuckets(TEST_BUCKET_NAME);
- }
-
- @Test
- public void testListUsers() throws Exception {
- testListUsers(TEST_USER_NAME);
- }
-
- @Test
- public void testUpdateUser() throws Exception {
- String originalUserName = TEST_USER_NAME;
- String updatedUserName = "updatedTestUser";
-
- testListUsers(originalUserName);
-
- runRegistryCommand("update-user",
- "--userName " + updatedUserName +
- " --userId " + testUserId
- );
-
- testListUsers(updatedUserName);
-
- runRegistryCommand("update-user",
- "--userName " + originalUserName +
- " --userId " + testUserId
- );
-
- testListUsers(originalUserName);
- }
-
- @Test
- public void testListUserGroups() throws Exception {
- testListUserGroup(TEST_USER_GROUP_NAME);
- }
-
- @Test
- public void testUpdateUserGroup() throws Exception {
- runRegistryCommand("update-user-group",
- "--userGroupName " + TEST_USER_GROUP_NAME +
- " --userNameList " + TEST_USER_NAME +
- " --userIdLis " + testUserId +
- " --userGroupId " + testUserGroupId
- );
-
- testListUserGroup(TEST_USER_GROUP_NAME);
- }
-
- @Test
- public void testGetAccessPolicy() throws Exception {
- String action = "read";
- String resource = "/testResource";
-
- testGetAccessPolicy(action, resource);
- }
-
- @Test
- public void testCreateOrUpdateAccessPolicy() throws Exception {
- String action = "read";
- String resource = "/testResource";
-
- runRegistryCommand("update-policy",
- "--accessPolicyResource " + resource +
- " --accessPolicyAction " + action +
- " --userNameList " + TEST_USER_NAME +
- " --userIdList " + testUserId +
- " --groupNameList " + TEST_USER_GROUP_NAME +
- " --groupIdList " + testUserGroupId
- );
-
- testGetAccessPolicy(action, resource);
-
- // Users are not removed if none is specified
- runRegistryCommand("update-policy",
- "--accessPolicyResource " + resource +
- " --accessPolicyAction " + action +
- " --groupNameList " + TEST_USER_GROUP_NAME +
- " --groupIdList " + testUserGroupId
- );
-
- testGetAccessPolicy(action, resource);
-
- // Groups are not removed if none is specified
- runRegistryCommand("update-policy",
- "--accessPolicyResource " + resource +
- " --accessPolicyAction " + action +
- " --userNameList " + TEST_USER_NAME +
- " --userIdList " + testUserId
- );
-
- testGetAccessPolicy(action, resource);
- }
-
- @Test
- public void testUpdateBucketPolicyByName() throws Exception {
- String action = "/read";
- runRegistryCommand("update-bucket-policy",
- "--bucketName " + TEST_BUCKET_NAME +
- " --accessPolicyAction " + action +
- " --userNameList " + TEST_USER_NAME +
- " --userIdList " + testUserId
- );
-
- testGetAccessPolicy(action, testBucketId);
- }
-
- @Test public void testUpdateBucketPolicyById() throws Exception {
- String action = "/write";
- runRegistryCommand("update-bucket-policy",
- "--bucketId " + testBucketId +
- " --accessPolicyAction " + action +
- " --groupNameList " + TEST_USER_GROUP_NAME +
- " --groupIdList " + testUserGroupId
- );
-
- testGetAccessPolicy(action, testBucketId);
- }
-
- @Test
- public void testListBuckets() throws Exception {
- testListBuckets(TEST_BUCKET_NAME);
- }
-
- private void testListUsers(String expectedUserName) throws IOException {
- runCommand(
- "\\s{3,}",
- () -> runRegistryCommand("list-users", ""),
- words -> {
- if (words.length > 2 && words[1].equals(expectedUserName)) {
- testUserId = words[2];
- }
- },
- () -> {
- assertNotNull(testUserId);
- assertTrue("User id shouldn't be blank!", !StringUtils.isBlank(testUserId));
- }
- );
- }
-
- private void testListUserGroup(String expectedUserGroupName) throws IOException {
- runCommand(
- "\\s{3,}",
- () -> runRegistryCommand("list-user-groups", ""),
- words -> {
- if (words.length > 3 && words[1].equals(expectedUserGroupName)) {
- testUserGroupId = words[2];
- }
- },
- () -> {
- assertNotNull(testUserGroupId);
- assertTrue("Group id shouldn't be blank!", !StringUtils.isBlank(testUserGroupId));
- }
- );
- }
-
- private void testListBuckets(String expectedBucketName) throws IOException {
- runCommand("\\s{3,}",
- () -> runRegistryCommand("list-buckets",""),
- words -> {
- if (words.length > 2 && words[1].equals(expectedBucketName)) {
- testBucketId = words[2];
- }
- },
- () -> {
- assertNotNull(testBucketId);
- assertTrue("Bucket ID should not be blank!", !StringUtils.isBlank(testBucketId));
- });
- }
-
- private void testGetAccessPolicy(String action, String resource) throws IOException {
- AtomicReference<String> resourceR = new AtomicReference<>();
- AtomicReference<String> actionR = new AtomicReference<>();
- AtomicReference<String> usersR = new AtomicReference<>();
- AtomicReference<String> groupsR = new AtomicReference<>();
-
- runCommand(
- "\\s*:\\s+",
- () -> runRegistryCommand("get-policy",
- "--accessPolicyResource " + resource +
- " --accessPolicyAction " + action
- ),
- words -> {
- if (words.length > 1) {
- if (words[0].equals("Users")) {
- usersR.set(words[1]);
- } else if (words[0].equals("Groups")) {
- groupsR.set(words[1]);
- } else if (words[0].equals("Resource")) {
- resourceR.set(words[1]);
- } else if (words[0].equals("Action")) {
- actionR.set(words[1]);
- }
- }
- },
- () -> {
- resourceR.get().equals(resource);
- actionR.get().contains(action);
- usersR.get().contains(TEST_USER_NAME);
- groupsR.get().contains(TEST_USER_GROUP_NAME);
- }
- );
- }
-
- private void runCommand(String delimiter, Runnable commandRunner, Consumer<String[]> outputLineHandler, Runnable check) throws IOException {
- try {
- // GIVEN
- startCaptureStdOut();
-
- // WHEN
- commandRunner.run();
-
- // THEN
- BufferedReader bufferedOutput = new BufferedReader(new InputStreamReader(new ByteArrayInputStream(out.toByteArray())));
-
- String line;
- while ((line = bufferedOutput.readLine()) != null) {
- originalStdOut.println(line);
-
- String[] words = line.split(delimiter);
-
- outputLineHandler.accept(words);
- }
-
- check.run();
- } finally {
- resetStdOut();
- }
- }
-
- private void runRegistryCommand(String command, String commandArguments) {
- // GIVEN
- String arguments = new StringJoiner(" ")
- .add("registry")
- .add(command)
- .add(commandArguments)
- .add(basicSettings)
- .add(securitySettings)
- .toString();
-
- String[] args = arguments.split("\\s+");
-
- // WHEN
- CLIMain.runSingleCommand(args);
-
- // THEN
- }
-
- private void startCaptureStdOut() {
- originalStdOut = System.out;
- out = new ByteArrayOutputStream();
- System.setOut(new PrintStream(out));
- }
-
- private void resetStdOut() {
- if (originalStdOut != null) {
- System.setOut(originalStdOut);
- }
- }
-}
diff --git a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/command/registry/tenant/TestTenantHelper.java b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/command/registry/tenant/TestTenantHelper.java
index 7efe9036b3..b3a290a763 100644
--- a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/command/registry/tenant/TestTenantHelper.java
+++ b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/command/registry/tenant/TestTenantHelper.java
@@ -17,7 +17,7 @@
package org.apache.nifi.toolkit.cli.impl.command.registry.tenant;
import org.apache.nifi.registry.authorization.Tenant;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import java.util.Arrays;
import java.util.Collections;
@@ -25,12 +25,11 @@ import java.util.HashSet;
import java.util.List;
import java.util.Set;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
public class TestTenantHelper {
@Test
- public void testSelectExistingTenantsWithEmptyNamesAndIds() throws Exception {
- // GIVEN
+ public void testSelectExistingTenantsWithEmptyNamesAndIds() {
String names = "";
String ids = "";
@@ -41,14 +40,11 @@ public class TestTenantHelper {
List<Tenant> expected = Collections.emptyList();
- // WHEN
- // THEN
testSelectExistingTenants(names, ids, allTenants, expected);
}
@Test
- public void testSelectExistingTenantsWithNames() throws Exception {
- // GIVEN
+ public void testSelectExistingTenantsWithNames() {
String names = "name1,name3";
String ids = "";
@@ -69,14 +65,11 @@ public class TestTenantHelper {
tenantFoundByName3
);
- // WHEN
- // THEN
testSelectExistingTenants(names, ids, allTenants, expected);
}
@Test
- public void testSelectExistingTenantsWithIds() throws Exception {
- // GIVEN
+ public void testSelectExistingTenantsWithIds() {
String names = "";
String ids = "id1,id2";
@@ -97,14 +90,11 @@ public class TestTenantHelper {
tenantFoundById2
);
- // WHEN
- // THEN
testSelectExistingTenants(names, ids, allTenants, expected);
}
@Test
- public void testSelectExistingTenantsWithComplexScenario() throws Exception {
- // GIVEN
+ public void testSelectExistingTenantsWithComplexScenario() {
String names = "name1,name3";
String ids = "id1,id2";
@@ -126,19 +116,14 @@ public class TestTenantHelper {
tenantFoundByName
);
- // WHEN
- // THEN
testSelectExistingTenants(names, ids, allTenants, expected);
}
private void testSelectExistingTenants(String names, String ids, List<Tenant> allTenants, List<Tenant> expectedTenants) {
- // GIVEN
Set<Tenant> expected = new HashSet<>(expectedTenants);
- // WHEN
Set<Tenant> actual = TenantHelper.selectExistingTenants(names, ids, allTenants);
- // THEN
assertEquals(expected, actual);
}
diff --git a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/TestBucketsResult.java b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/TestBucketsResult.java
index 2933153de2..e0023cd085 100644
--- a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/TestBucketsResult.java
+++ b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/TestBucketsResult.java
@@ -16,15 +16,13 @@
*/
package org.apache.nifi.toolkit.cli.impl.result;
-import org.apache.commons.lang3.SystemUtils;
import org.apache.nifi.registry.bucket.Bucket;
import org.apache.nifi.toolkit.cli.api.ResultType;
import org.apache.nifi.toolkit.cli.impl.result.registry.BucketsResult;
-import org.junit.Assert;
-import org.junit.Assume;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledOnOs;
+import org.junit.jupiter.api.condition.OS;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -34,17 +32,15 @@ import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+@DisabledOnOs(OS.WINDOWS)
public class TestBucketsResult {
private ByteArrayOutputStream outputStream;
private PrintStream printStream;
- @BeforeClass
- public static void setupCompleter() {
- Assume.assumeTrue("Test only runs on *nix", !SystemUtils.IS_OS_WINDOWS);
- }
-
- @Before
+ @BeforeEach
public void setup() {
this.outputStream = new ByteArrayOutputStream();
this.printStream = new PrintStream(outputStream, true);
@@ -79,7 +75,6 @@ public class TestBucketsResult {
"2 Bucket 2 ddf5f289-7502-46df-9798-4b0457c1816b (empty) \n" +
"\n";
- Assert.assertEquals(expected, resultOut);
+ assertEquals(expected, resultOut);
}
-
}
diff --git a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/TestRegisteredFlowSnapshotMetadataResult.java b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/TestRegisteredFlowSnapshotMetadataResult.java
index b993c8b59a..33715d6db8 100644
--- a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/TestRegisteredFlowSnapshotMetadataResult.java
+++ b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/TestRegisteredFlowSnapshotMetadataResult.java
@@ -16,15 +16,13 @@
*/
package org.apache.nifi.toolkit.cli.impl.result;
-import org.apache.commons.lang3.SystemUtils;
import org.apache.nifi.registry.flow.VersionedFlowSnapshotMetadata;
import org.apache.nifi.toolkit.cli.api.ResultType;
import org.apache.nifi.toolkit.cli.impl.result.registry.RegisteredFlowSnapshotMetadataResult;
-import org.junit.Assert;
-import org.junit.Assume;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledOnOs;
+import org.junit.jupiter.api.condition.OS;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -35,17 +33,15 @@ import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
+@DisabledOnOs(OS.WINDOWS)
public class TestRegisteredFlowSnapshotMetadataResult {
private ByteArrayOutputStream outputStream;
private PrintStream printStream;
- @BeforeClass
- public static void setupCompleter() {
- Assume.assumeTrue("Test only runs on *nix", !SystemUtils.IS_OS_WINDOWS);
- }
-
- @Before
+ @BeforeEach
public void setup() {
this.outputStream = new ByteArrayOutputStream();
this.printStream = new PrintStream(outputStream, true);
@@ -75,7 +71,6 @@ public class TestRegisteredFlowSnapshotMetadataResult {
result.write(printStream);
final String resultOut = new String(outputStream.toByteArray(), StandardCharsets.UTF_8);
- //System.out.println(resultOut);
// can't get the time zone to line up on travis, so ignore this for now
final String expectedPattern = "^\\n" +
@@ -85,6 +80,6 @@ public class TestRegisteredFlowSnapshotMetadataResult {
//"2 Wed, Feb 14 2018 12:30 EST user2 This is v2 \n" +
"(.|\\n)+$";
- Assert.assertTrue(resultOut.matches(expectedPattern));
+ assertTrue(resultOut.matches(expectedPattern));
}
}
diff --git a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/TestRegistryClientResult.java b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/TestRegistryClientResult.java
index 360d8c7135..209628574b 100644
--- a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/TestRegistryClientResult.java
+++ b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/TestRegistryClientResult.java
@@ -16,17 +16,15 @@
*/
package org.apache.nifi.toolkit.cli.impl.result;
-import org.apache.commons.lang3.SystemUtils;
import org.apache.nifi.toolkit.cli.api.ResultType;
import org.apache.nifi.toolkit.cli.impl.result.nifi.RegistryClientsResult;
import org.apache.nifi.web.api.dto.FlowRegistryClientDTO;
import org.apache.nifi.web.api.entity.FlowRegistryClientEntity;
import org.apache.nifi.web.api.entity.FlowRegistryClientsEntity;
-import org.junit.Assert;
-import org.junit.Assume;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledOnOs;
+import org.junit.jupiter.api.condition.OS;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -36,22 +34,21 @@ import java.util.HashSet;
import java.util.Set;
import java.util.UUID;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+@DisabledOnOs(OS.WINDOWS)
public class TestRegistryClientResult {
private ByteArrayOutputStream outputStream;
private PrintStream printStream;
- @BeforeClass
- public static void setupCompleter() {
- Assume.assumeTrue("Test only runs on *nix", !SystemUtils.IS_OS_WINDOWS);
- }
-
- @Before
+ @BeforeEach
public void setup() {
this.outputStream = new ByteArrayOutputStream();
this.printStream = new PrintStream(outputStream, true);
}
+ @SuppressWarnings("deprecation")
@Test
public void testWriteSimpleRegistryClientsResult() throws IOException {
final FlowRegistryClientDTO r1 = new FlowRegistryClientDTO();
@@ -83,7 +80,6 @@ public class TestRegistryClientResult {
result.write(printStream);
final String resultOut = new String(outputStream.toByteArray(), StandardCharsets.UTF_8);
- //System.out.println(resultOut);
final String expected = "\n" +
"# Name Id Uri \n" +
@@ -92,7 +88,7 @@ public class TestRegistryClientResult {
"2 Registry 2 with a longer than usu... ddf5f289-7502-46df-9798-4b0457c1816b http://localhost:18080 \n" +
"\n";
- Assert.assertEquals(expected, resultOut);
+ assertEquals(expected, resultOut);
}
}
diff --git a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/TestVersionedFlowsResult.java b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/TestVersionedFlowsResult.java
index d61fa828d6..54c69cc501 100644
--- a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/TestVersionedFlowsResult.java
+++ b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/TestVersionedFlowsResult.java
@@ -16,18 +16,16 @@
*/
package org.apache.nifi.toolkit.cli.impl.result;
-import org.apache.commons.lang3.SystemUtils;
import org.apache.nifi.registry.flow.VersionedFlow;
import org.apache.nifi.toolkit.cli.api.Context;
import org.apache.nifi.toolkit.cli.api.ReferenceResolver;
import org.apache.nifi.toolkit.cli.api.ResultType;
import org.apache.nifi.toolkit.cli.impl.command.CommandOption;
import org.apache.nifi.toolkit.cli.impl.result.registry.VersionedFlowsResult;
-import org.junit.Assert;
-import org.junit.Assume;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledOnOs;
+import org.junit.jupiter.api.condition.OS;
import org.mockito.Mockito;
import java.io.ByteArrayOutputStream;
@@ -38,18 +36,16 @@ import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+@DisabledOnOs(OS.WINDOWS)
public class TestVersionedFlowsResult {
private ByteArrayOutputStream outputStream;
private PrintStream printStream;
private List<VersionedFlow> flows;
- @BeforeClass
- public static void setupCompleter() {
- Assume.assumeTrue("Test only runs on *nix", !SystemUtils.IS_OS_WINDOWS);
- }
-
- @Before
+ @BeforeEach
public void setup() {
this.outputStream = new ByteArrayOutputStream();
this.printStream = new PrintStream(outputStream, true);
@@ -79,7 +75,6 @@ public class TestVersionedFlowsResult {
result.write(printStream);
final String resultOut = new String(outputStream.toByteArray(), StandardCharsets.UTF_8);
- //System.out.println(resultOut);
final String expected = "\n" +
"# Name Id Description \n" +
@@ -88,7 +83,7 @@ public class TestVersionedFlowsResult {
"2 Flow 2 ddf5f289-7502-46df-9798-4b0457c1816b (empty) \n" +
"\n";
- Assert.assertEquals(expected, resultOut);
+ assertEquals(expected, resultOut);
}
@Test
@@ -97,19 +92,18 @@ public class TestVersionedFlowsResult {
final ReferenceResolver resolver = result.createReferenceResolver(Mockito.mock(Context.class));
// should default to flow id when no option is specified
- Assert.assertEquals("ea752054-22c6-4fc0-b851-967d9a3837cb", resolver.resolve(null, 1).getResolvedValue());
- Assert.assertEquals("ddf5f289-7502-46df-9798-4b0457c1816b", resolver.resolve(null, 2).getResolvedValue());
+ assertEquals("ea752054-22c6-4fc0-b851-967d9a3837cb", resolver.resolve(null, 1).getResolvedValue());
+ assertEquals("ddf5f289-7502-46df-9798-4b0457c1816b", resolver.resolve(null, 2).getResolvedValue());
// should use flow id when flow id is specified
- Assert.assertEquals("ea752054-22c6-4fc0-b851-967d9a3837cb", resolver.resolve(CommandOption.FLOW_ID, 1).getResolvedValue());
- Assert.assertEquals("ddf5f289-7502-46df-9798-4b0457c1816b", resolver.resolve(CommandOption.FLOW_ID, 2).getResolvedValue());
+ assertEquals("ea752054-22c6-4fc0-b851-967d9a3837cb", resolver.resolve(CommandOption.FLOW_ID, 1).getResolvedValue());
+ assertEquals("ddf5f289-7502-46df-9798-4b0457c1816b", resolver.resolve(CommandOption.FLOW_ID, 2).getResolvedValue());
// should resolve the bucket id when bucket id option is used
- Assert.assertEquals("b1", resolver.resolve(CommandOption.BUCKET_ID, 1).getResolvedValue());
- Assert.assertEquals("b2", resolver.resolve(CommandOption.BUCKET_ID, 2).getResolvedValue());
+ assertEquals("b1", resolver.resolve(CommandOption.BUCKET_ID, 1).getResolvedValue());
+ assertEquals("b2", resolver.resolve(CommandOption.BUCKET_ID, 2).getResolvedValue());
// should resolve to null when position doesn't exist
- Assert.assertEquals(null, resolver.resolve(CommandOption.FLOW_ID, 3));
+ assertEquals(null, resolver.resolve(CommandOption.FLOW_ID, 3));
}
-
}
diff --git a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/writer/TestDynamicTableWriter.java b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/writer/TestDynamicTableWriter.java
index 39e3ca629d..2cdb710737 100644
--- a/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/writer/TestDynamicTableWriter.java
+++ b/nifi-toolkit/nifi-toolkit-cli/src/test/java/org/apache/nifi/toolkit/cli/impl/result/writer/TestDynamicTableWriter.java
@@ -16,17 +16,18 @@
*/
package org.apache.nifi.toolkit.cli.impl.result.writer;
-import org.apache.commons.lang3.SystemUtils;
-import org.junit.Assert;
-import org.junit.Assume;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledOnOs;
+import org.junit.jupiter.api.condition.OS;
import java.io.ByteArrayOutputStream;
import java.io.PrintStream;
import java.nio.charset.StandardCharsets;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+@DisabledOnOs(OS.WINDOWS)
public class TestDynamicTableWriter {
private Table table;
@@ -35,12 +36,7 @@ public class TestDynamicTableWriter {
private ByteArrayOutputStream outputStream;
private PrintStream printStream;
- @BeforeClass
- public static void setupCompleter() {
- Assume.assumeTrue("Test only runs on *nix", !SystemUtils.IS_OS_WINDOWS);
- }
-
- @Before
+ @BeforeEach
public void setup() {
this.table = new Table.Builder()
.column("#", 3, 3, false)
@@ -60,14 +56,13 @@ public class TestDynamicTableWriter {
tableWriter.write(table, printStream);
final String result = new String(outputStream.toByteArray(), StandardCharsets.UTF_8);
- //System.out.println(result);
final String expected = "\n" +
"# Name Id Description \n" +
"--- -------------------- ------------------------------------ ----------- \n" +
"\n";
- Assert.assertEquals(expected, result);
+ assertEquals(expected, result);
}
@Test
@@ -96,7 +91,6 @@ public class TestDynamicTableWriter {
tableWriter.write(table, printStream);
final String result = new String(outputStream.toByteArray(), StandardCharsets.UTF_8);
- //System.out.println(result);
final String expected = "\n" +
"# Name Id Description \n" +
@@ -106,7 +100,7 @@ public class TestDynamicTableWriter {
"3 Bucket 3 12345-12345-12345-12345-12345-12345 (empty) \n" +
"\n";
- Assert.assertEquals(expected, result);
+ assertEquals(expected, result);
}
@Test
@@ -116,7 +110,6 @@ public class TestDynamicTableWriter {
tableWriter.write(table, printStream);
final String result = new String(outputStream.toByteArray(), StandardCharsets.UTF_8);
- //System.out.println(result);
final String expected ="\n" +
"# Name Id Description \n" +
@@ -125,7 +118,7 @@ public class TestDynamicTableWriter {
"2 Bucket 2 12345-12345-12345-12345-12345-12345 (empty) \n" +
"\n";
- Assert.assertEquals(expected, result);
+ assertEquals(expected, result);
}
}
\ No newline at end of file
diff --git a/nifi-toolkit/nifi-toolkit-encrypt-config/src/test/groovy/org/apache/nifi/toolkit/encryptconfig/EncryptConfigMainTest.groovy b/nifi-toolkit/nifi-toolkit-encrypt-config/src/test/groovy/org/apache/nifi/toolkit/encryptconfig/EncryptConfigMainTest.groovy
index efaab486c0..cf3a8da1bb 100644
--- a/nifi-toolkit/nifi-toolkit-encrypt-config/src/test/groovy/org/apache/nifi/toolkit/encryptconfig/EncryptConfigMainTest.groovy
+++ b/nifi-toolkit/nifi-toolkit-encrypt-config/src/test/groovy/org/apache/nifi/toolkit/encryptconfig/EncryptConfigMainTest.groovy
@@ -16,76 +16,34 @@
*/
package org.apache.nifi.toolkit.encryptconfig
-import groovy.test.GroovyTestCase
-import org.apache.nifi.properties.NiFiPropertiesLoader
-import org.apache.nifi.properties.ProtectedPropertyContext
-import org.apache.nifi.properties.SensitivePropertyProvider
-import org.apache.nifi.properties.scheme.StandardProtectionScheme
-import org.apache.nifi.toolkit.encryptconfig.util.BootstrapUtil
-import org.apache.nifi.util.NiFiProperties
-import org.bouncycastle.jce.provider.BouncyCastleProvider
-import org.junit.BeforeClass
-import org.junit.Rule
-import org.junit.Test
-import org.junit.contrib.java.lang.system.Assertion
-import org.junit.contrib.java.lang.system.ExpectedSystemExit
-import org.junit.runner.RunWith
-import org.junit.runners.JUnit4
-import org.slf4j.Logger
-import org.slf4j.LoggerFactory
+import org.junit.jupiter.api.Test
-import java.nio.file.Files
-import java.security.Security
-
-@RunWith(JUnit4.class)
-class EncryptConfigMainTest extends GroovyTestCase {
- private static final Logger logger = LoggerFactory.getLogger(EncryptConfigMainTest.class)
-
- @Rule
- public final ExpectedSystemExit exit = ExpectedSystemExit.none()
-
- @BeforeClass
- static void setUpOnce() throws Exception {
- Security.addProvider(new BouncyCastleProvider())
-
- logger.metaClass.methodMissing = { String name, args ->
- logger.info("[${name?.toUpperCase()}] ${(args as List).join(" ")}")
- }
-
- TestUtil.setupTmpDir()
- }
+class EncryptConfigMainTest {
@Test
void testDetermineModeFromArgsWithLegacyMode() {
- // Arrange
def argsList = "-b conf/bootstrap.conf -n conf/nifi.properties".split(" ").toList()
- // Act
def toolMode = EncryptConfigMain.determineModeFromArgs(argsList)
- // Assert
toolMode != null
toolMode instanceof LegacyMode
}
@Test
void testDetermineModeFromArgsWithNifiRegistryMode() {
- // Arrange
def argsList = "--nifiRegistry".split(" ").toList()
- // Act
+
def toolMode = EncryptConfigMain.determineModeFromArgs(argsList)
- // Assert
+
toolMode != null
toolMode instanceof NiFiRegistryMode
!argsList.contains("--nifiRegistry")
- /* Test when --nifiRegistry is not first flag */
-
- // Arrange
argsList = "-b conf/bootstrap.conf -p --nifiRegistry -r conf/nifi-registry.properties".split(" ").toList()
- // Act
+
toolMode = EncryptConfigMain.determineModeFromArgs(argsList)
- // Assert
+
toolMode != null
toolMode instanceof NiFiRegistryMode
!argsList.contains("--nifiRegistry")
@@ -93,23 +51,19 @@ class EncryptConfigMainTest extends GroovyTestCase {
@Test
void testDetermineModeFromArgsWithNifiRegistryDecryptMode() {
- // Arrange
def argsList = "--nifiRegistry --decrypt".split(" ").toList()
- // Act
+
def toolMode = EncryptConfigMain.determineModeFromArgs(argsList)
- // Assert
+
toolMode != null
toolMode instanceof NiFiRegistryDecryptMode
!argsList.contains("--nifiRegistry")
!argsList.contains("--decrypt")
- /* Test when --decrypt comes before --nifiRegistry */
-
- // Arrange
argsList = "--b conf/bootstrap.conf --decrypt --nifiRegistry".split(" ").toList()
- // Act
+
toolMode = EncryptConfigMain.determineModeFromArgs(argsList)
- // Assert
+
toolMode != null
toolMode instanceof NiFiRegistryDecryptMode
!argsList.contains("--nifiRegistry")
@@ -118,166 +72,10 @@ class EncryptConfigMainTest extends GroovyTestCase {
@Test
void testDetermineModeFromArgsReturnsNullOnDecryptWithoutNifiRegistryPresent() {
- // Arrange
def argsList = "--decrypt".split(" ").toList()
- // Act
def toolMode = EncryptConfigMain.determineModeFromArgs(argsList)
- // Assert
toolMode == null
}
-
- @Test
- void testShouldPerformFullOperationForNiFiPropertiesAndLoginIdentityProvidersAndAuthorizers() {
- // Arrange
- exit.expectSystemExitWithStatus(0)
-
- File tmpDir = TestUtil.setupTmpDir()
-
- File emptyKeyFile = new File("src/test/resources/bootstrap_with_empty_root_key.conf")
- File bootstrapFile = new File("target/tmp/tmp_bootstrap.conf")
- bootstrapFile.delete()
-
- Files.copy(emptyKeyFile.toPath(), bootstrapFile.toPath())
- final List<String> originalBootstrapLines = bootstrapFile.readLines()
- String originalKeyLine = originalBootstrapLines.find {
- it.startsWith("${BootstrapUtil.NIFI_BOOTSTRAP_KEY_PROPERTY}=")
- }
- logger.info("Original key line from bootstrap.conf: ${originalKeyLine}")
- assert originalKeyLine == "${BootstrapUtil.NIFI_BOOTSTRAP_KEY_PROPERTY}="
-
- final String EXPECTED_KEY_LINE = "${BootstrapUtil.NIFI_BOOTSTRAP_KEY_PROPERTY}=${TestUtil.KEY_HEX}"
-
- // Set up the NFP file
- File inputPropertiesFile = new File("src/test/resources/nifi_with_sensitive_properties_unprotected.properties")
- File outputPropertiesFile = new File("target/tmp/tmp_nifi.properties")
- outputPropertiesFile.delete()
-
- NiFiProperties inputProperties = new NiFiPropertiesLoader().load(inputPropertiesFile)
- logger.info("Loaded ${inputProperties.size()} properties from input file")
-
- // Set up the LIP file
- File inputLIPFile = new File("src/test/resources/login-identity-providers-populated.xml")
- File outputLIPFile = new File("target/tmp/tmp-lip.xml")
- outputLIPFile.delete()
-
- String originalLipXmlContent = inputLIPFile.text
- logger.info("Original LIP XML content: ${originalLipXmlContent}")
-
- // Set up the Authorizers file
- File inputAuthorizersFile = new File("src/test/resources/authorizers-populated.xml")
- File outputAuthorizersFile = new File("target/tmp/tmp-authorizers.xml")
- outputAuthorizersFile.delete()
-
- String originalAuthorizersXmlContent = inputAuthorizersFile.text
- logger.info("Original Authorizers XML content: ${originalAuthorizersXmlContent}")
-
- String[] args = [
- "-n", inputPropertiesFile.path,
- "-l", inputLIPFile.path,
- "-a", inputAuthorizersFile.path,
- "-b", bootstrapFile.path,
- "-o", outputPropertiesFile.path,
- "-i", outputLIPFile.path,
- "-u", outputAuthorizersFile.path,
- "-k", TestUtil.KEY_HEX,
- "-v"]
-
- SensitivePropertyProvider spp = org.apache.nifi.properties.StandardSensitivePropertyProviderFactory.withKey(TestUtil.KEY_HEX)
- .getProvider(new StandardProtectionScheme("aes/gcm"))
-
- exit.checkAssertionAfterwards(new Assertion() {
- void checkAssertion() {
-
- /*** NiFi Properties Assertions ***/
-
- final List<String> updatedPropertiesLines = outputPropertiesFile.readLines()
-
- // Check that the output values for sensitive properties are not the same as the original (i.e. it was encrypted)
- NiFiProperties updatedProperties = NiFiPropertiesLoader.withKey(TestUtil.KEY_HEX).load(outputPropertiesFile)
- assert updatedProperties.size() >= inputProperties.size()
-
- // Check that the new NiFiProperties instance matches the output file (values still encrypted)
- updatedProperties.getPropertyKeys().every { String key ->
- assert updatedPropertiesLines.contains("${key}=${updatedProperties.getProperty(key)}".toString())
- }
-
- /*** Login Identity Providers Assertions ***/
-
- final String updatedLipXmlContent = outputLIPFile.text
- logger.info("Updated LIP XML content: ${updatedLipXmlContent}")
- // Check that the output values for sensitive properties are not the same as the original (i.e. it was encrypted)
- def originalLipParsedXml = new XmlSlurper().parseText(originalLipXmlContent)
- def updatedLipParsedXml = new XmlSlurper().parseText(updatedLipXmlContent)
- assert originalLipParsedXml != updatedLipParsedXml
- assert originalLipParsedXml.'**'.findAll { it.@encryption } != updatedLipParsedXml.'**'.findAll {
- it.@encryption
- }
- def lipEncryptedValues = updatedLipParsedXml.provider.find {
- it.identifier == 'ldap-provider'
- }.property.findAll {
- it.@name =~ "Password" && it.@encryption =~ "aes/gcm/\\d{3}"
- }
- lipEncryptedValues.each {
- assert spp.unprotect((String) it.text(), ProtectedPropertyContext.defaultContext((String) it.@name)) == TestUtil.PASSWORD
- }
- // Check that the comments are still there
- def lipTrimmedLines = inputLIPFile.readLines().collect { it.trim() }.findAll { it }
- def lipTrimmedSerializedLines = updatedLipXmlContent.split("\n").collect { it.trim() }.findAll { it }
- assert lipTrimmedLines.size() == lipTrimmedSerializedLines.size()
-
- /*** Authorizers Assertions ***/
-
- final String updatedAuthorizersXmlContent = outputAuthorizersFile.text
- logger.info("Updated Authorizers XML content: ${updatedAuthorizersXmlContent}")
- // Check that the output values for sensitive properties are not the same as the original (i.e. it was encrypted)
- def originalAuthorizersParsedXml = new XmlSlurper().parseText(originalAuthorizersXmlContent)
- def updatedAuthorizersParsedXml = new XmlSlurper().parseText(updatedAuthorizersXmlContent)
- assert originalAuthorizersParsedXml != updatedAuthorizersParsedXml
- assert originalAuthorizersParsedXml.'**'.findAll { it.@encryption } != updatedAuthorizersParsedXml.'**'.findAll {
- it.@encryption
- }
- def authorizersEncryptedValues = updatedAuthorizersParsedXml.userGroupProvider.find {
- it.identifier == 'ldap-user-group-provider'
- }.property.findAll {
- it.@name =~ "Password" && it.@encryption =~ "aes/gcm/\\d{3}"
- }
- authorizersEncryptedValues.each {
- assert spp.unprotect((String) it.text(), (ProtectedPropertyContext) ProtectedPropertyContext.defaultContext((String) it.@name)) == TestUtil.PASSWORD
- }
- // Check that the comments are still there
- def authorizersTrimmedLines = inputAuthorizersFile.readLines().collect { it.trim() }.findAll { it }
- def authorizersTrimmedSerializedLines = updatedAuthorizersXmlContent.split("\n").collect { it.trim() }.findAll { it }
- assert authorizersTrimmedLines.size() == authorizersTrimmedSerializedLines.size()
-
- /*** Bootstrap assertions ***/
-
- // Check that the key was persisted to the bootstrap.conf
- final List<String> updatedBootstrapLines = bootstrapFile.readLines()
- String updatedKeyLine = updatedBootstrapLines.find {
- it.startsWith(BootstrapUtil.NIFI_BOOTSTRAP_KEY_PROPERTY)
- }
- logger.info("Updated key line: ${updatedKeyLine}")
-
- assert updatedKeyLine == EXPECTED_KEY_LINE
- assert originalBootstrapLines.size() == updatedBootstrapLines.size()
-
- // Clean up
- outputPropertiesFile.deleteOnExit()
- outputLIPFile.deleteOnExit()
- outputAuthorizersFile.deleteOnExit()
- bootstrapFile.deleteOnExit()
- tmpDir.deleteOnExit()
- }
- })
-
- // Act
- EncryptConfigMain.main(args)
- logger.info("Invoked #main with ${args.join(" ")}")
-
- // Assert
-
- // Assertions defined above
- }
}
diff --git a/nifi-toolkit/nifi-toolkit-flowanalyzer/src/test/java/org/apache/nifi/toolkit/FlowAnalyzerDriverTest.java b/nifi-toolkit/nifi-toolkit-flowanalyzer/src/test/java/org/apache/nifi/toolkit/FlowAnalyzerDriverTest.java
index 9f1243bf93..cb484c129b 100644
--- a/nifi-toolkit/nifi-toolkit-flowanalyzer/src/test/java/org/apache/nifi/toolkit/FlowAnalyzerDriverTest.java
+++ b/nifi-toolkit/nifi-toolkit-flowanalyzer/src/test/java/org/apache/nifi/toolkit/FlowAnalyzerDriverTest.java
@@ -16,12 +16,12 @@
*/
package org.apache.nifi.toolkit;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
import java.math.BigDecimal;
import org.apache.nifi.toolkit.flowanalyzer.FlowAnalyzerDriver;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
public class FlowAnalyzerDriverTest {
diff --git a/nifi-toolkit/nifi-toolkit-flowfile-repo/src/test/java/org/apache/nifi/toolkit/repos/flowfile/TestRepairCorruptedFileEndings.java b/nifi-toolkit/nifi-toolkit-flowfile-repo/src/test/java/org/apache/nifi/toolkit/repos/flowfile/TestRepairCorruptedFileEndings.java
index d01e3b6dcc..b9fef21c1f 100644
--- a/nifi-toolkit/nifi-toolkit-flowfile-repo/src/test/java/org/apache/nifi/toolkit/repos/flowfile/TestRepairCorruptedFileEndings.java
+++ b/nifi-toolkit/nifi-toolkit-flowfile-repo/src/test/java/org/apache/nifi/toolkit/repos/flowfile/TestRepairCorruptedFileEndings.java
@@ -17,35 +17,29 @@
package org.apache.nifi.toolkit.repos.flowfile;
-import org.apache.commons.lang3.SystemUtils;
-import org.junit.After;
-import org.junit.Assert;
-import org.junit.Assume;
-import org.junit.Before;
-
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.StandardOpenOption;
-import org.junit.BeforeClass;
-import org.junit.Test;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.condition.DisabledOnOs;
+import org.junit.jupiter.api.condition.OS;
+@DisabledOnOs(OS.WINDOWS)
public class TestRepairCorruptedFileEndings {
private final File targetFile = new File("target/1.bin");
- @BeforeClass
- public static void setupInstance() {
- Assume.assumeTrue("Test only runs on *nix", !SystemUtils.IS_OS_WINDOWS);
- }
-
- @Before
- @After
+ @BeforeEach
+ @AfterEach
public void cleanup() {
if (targetFile.exists()) {
- Assert.assertTrue(targetFile.delete());
+ assertTrue(targetFile.delete());
}
}
diff --git a/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/DataPacketDtoTest.java b/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/DataPacketDtoTest.java
index 6c27ce4b95..6ca6354a33 100644
--- a/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/DataPacketDtoTest.java
+++ b/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/DataPacketDtoTest.java
@@ -19,7 +19,7 @@ package org.apache.nifi.toolkit.s2s;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.nifi.remote.protocol.DataPacket;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import java.io.ByteArrayInputStream;
import java.io.IOException;
@@ -30,8 +30,8 @@ import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNull;
public class DataPacketDtoTest {
public static DataPacketDto create(byte[] data) {
diff --git a/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/DataPacketImplTest.java b/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/DataPacketImplTest.java
index 6dfcd380bf..628a2ee4df 100644
--- a/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/DataPacketImplTest.java
+++ b/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/DataPacketImplTest.java
@@ -18,8 +18,8 @@
package org.apache.nifi.toolkit.s2s;
import org.apache.commons.io.IOUtils;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import java.io.File;
import java.io.FileOutputStream;
@@ -30,13 +30,13 @@ import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
-import static org.junit.Assert.assertArrayEquals;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
public class DataPacketImplTest {
private Map<String, String> testAttributes;
- @Before
+ @BeforeEach
public void setup() {
testAttributes = new HashMap<>();
testAttributes.put("testKey", "testVal");
diff --git a/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/SiteToSiteCliMainTest.java b/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/SiteToSiteCliMainTest.java
index 6f9e771a67..ee05460a62 100644
--- a/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/SiteToSiteCliMainTest.java
+++ b/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/SiteToSiteCliMainTest.java
@@ -25,15 +25,15 @@ import org.apache.nifi.remote.client.SiteToSiteClient;
import org.apache.nifi.remote.client.SiteToSiteClientConfig;
import org.apache.nifi.remote.protocol.SiteToSiteTransportProtocol;
import org.apache.nifi.remote.protocol.http.HttpProxy;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import java.io.File;
import java.util.concurrent.TimeUnit;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
public class SiteToSiteCliMainTest {
private String expectedUrl;
@@ -56,7 +56,7 @@ public class SiteToSiteCliMainTest {
private long expectedBatchSize;
private HttpProxy expectedHttpProxy;
- @Before
+ @BeforeEach
public void setup() {
SiteToSiteClient.Builder builder = new SiteToSiteClient.Builder();
expectedUrl = SiteToSiteCliMain.URL_OPTION_DEFAULT;
diff --git a/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/SiteToSiteReceiverTest.java b/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/SiteToSiteReceiverTest.java
index d87ee10d4c..e3119d3e8f 100644
--- a/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/SiteToSiteReceiverTest.java
+++ b/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/SiteToSiteReceiverTest.java
@@ -24,11 +24,11 @@ import org.apache.nifi.remote.Transaction;
import org.apache.nifi.remote.TransactionCompletion;
import org.apache.nifi.remote.TransferDirection;
import org.apache.nifi.remote.client.SiteToSiteClient;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.mockito.junit.jupiter.MockitoExtension;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -37,13 +37,13 @@ import java.util.Arrays;
import java.util.Collections;
import java.util.function.Supplier;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@ExtendWith(MockitoExtension.class)
public class SiteToSiteReceiverTest {
- private final ObjectMapper objectMapper = new ObjectMapper().setDefaultPropertyInclusion(Value.construct(Include.NON_NULL, Include.ALWAYS));;
+ private final ObjectMapper objectMapper = new ObjectMapper().setDefaultPropertyInclusion(Value.construct(Include.NON_NULL, Include.ALWAYS));
@Mock
SiteToSiteClient siteToSiteClient;
@Mock
@@ -54,7 +54,7 @@ public class SiteToSiteReceiverTest {
private final Supplier<SiteToSiteReceiver> receiverSupplier = () -> new SiteToSiteReceiver(siteToSiteClient, data);
ByteArrayOutputStream expectedData;
- @Before
+ @BeforeEach
public void setup() throws IOException {
data = new ByteArrayOutputStream();
expectedData = new ByteArrayOutputStream();
@@ -81,7 +81,7 @@ public class SiteToSiteReceiverTest {
assertEquals(transactionCompletion, receiverSupplier.get().receiveFiles());
- objectMapper.writeValue(expectedData, Arrays.asList(dataPacketDto));
+ objectMapper.writeValue(expectedData, Collections.singletonList(dataPacketDto));
assertEquals(expectedData.toString(), data.toString());
}
diff --git a/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/SiteToSiteSenderTest.java b/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/SiteToSiteSenderTest.java
index 6b34e5653a..9ae7743447 100644
--- a/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/SiteToSiteSenderTest.java
+++ b/nifi-toolkit/nifi-toolkit-s2s/src/test/java/org/apache/nifi/toolkit/s2s/SiteToSiteSenderTest.java
@@ -23,11 +23,11 @@ import org.apache.nifi.remote.TransactionCompletion;
import org.apache.nifi.remote.TransferDirection;
import org.apache.nifi.remote.client.SiteToSiteClient;
import org.apache.nifi.remote.protocol.DataPacket;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.mockito.junit.jupiter.MockitoExtension;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
@@ -38,7 +38,8 @@ import java.util.Collections;
import java.util.function.Supplier;
import java.util.stream.Collectors;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.doThrow;
import static org.mockito.Mockito.never;
@@ -46,7 +47,7 @@ import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verifyNoMoreInteractions;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@ExtendWith(MockitoExtension.class)
public class SiteToSiteSenderTest {
private final ObjectMapper objectMapper = new ObjectMapper();
@Mock
@@ -58,19 +59,16 @@ public class SiteToSiteSenderTest {
ByteArrayOutputStream data;
private final Supplier<SiteToSiteSender> senderSupplier = () -> new SiteToSiteSender(siteToSiteClient, new ByteArrayInputStream(data.toByteArray()));
- @Before
+ @BeforeEach
public void setup() throws IOException {
data = new ByteArrayOutputStream();
when(siteToSiteClient.createTransaction(TransferDirection.SEND)).thenReturn(transaction);
- when(transaction.complete()).thenAnswer(invocation -> {
- verify(siteToSiteClient).createTransaction(TransferDirection.SEND);
- verify(transaction).confirm();
- return transactionCompletion;
- });
}
@Test
public void testEmptyList() throws IOException {
+ setTransactionCompletion();
+
objectMapper.writeValue(data, Collections.emptyList());
assertEquals(transactionCompletion, senderSupplier.get().sendFiles());
verify(transaction, never()).send(any(DataPacket.class));
@@ -80,6 +78,8 @@ public class SiteToSiteSenderTest {
@Test
public void testSingleElement() throws IOException {
+ setTransactionCompletion();
+
DataPacketDto dataPacketDto = new DataPacketDto("test-data".getBytes(StandardCharsets.UTF_8)).putAttribute("key", "value");
objectMapper.writeValue(data, Arrays.stream(new DataPacketDto[]{dataPacketDto}).collect(Collectors.toList()));
assertEquals(transactionCompletion, senderSupplier.get().sendFiles());
@@ -90,6 +90,8 @@ public class SiteToSiteSenderTest {
@Test
public void testMultipleElements() throws IOException {
+ setTransactionCompletion();
+
DataPacketDto dataPacketDto = new DataPacketDto("test-data".getBytes(StandardCharsets.UTF_8)).putAttribute("key", "value");
DataPacketDto dataPacketDto2 = new DataPacketDto("test-data2".getBytes(StandardCharsets.UTF_8)).putAttribute("key2", "value2");
objectMapper.writeValue(data, Arrays.stream(new DataPacketDto[]{dataPacketDto, dataPacketDto2}).collect(Collectors.toList()));
@@ -100,31 +102,31 @@ public class SiteToSiteSenderTest {
verifyNoMoreInteractions(siteToSiteClient, transaction, transactionCompletion);
}
- @Test(expected = IOException.class)
+ @Test
public void testIOException() throws IOException {
IOException test = new IOException("test");
DataPacketDto dataPacketDto = new DataPacketDto("test-data".getBytes(StandardCharsets.UTF_8)).putAttribute("key", "value");
objectMapper.writeValue(data, Arrays.stream(new DataPacketDto[]{dataPacketDto}).collect(Collectors.toList()));
doThrow(test).when(transaction).send(any(DataPacket.class));
- try {
- senderSupplier.get().sendFiles();
- } catch (IOException e) {
- assertEquals(test, e);
- throw e;
- }
+
+ assertThrows(IOException.class, () -> senderSupplier.get().sendFiles());
}
- @Test(expected = IOException.class)
+ @Test
public void testRuntimeException() throws IOException {
RuntimeException test = new RuntimeException("test");
DataPacketDto dataPacketDto = new DataPacketDto("test-data".getBytes(StandardCharsets.UTF_8)).putAttribute("key", "value");
objectMapper.writeValue(data, Arrays.stream(new DataPacketDto[]{dataPacketDto}).collect(Collectors.toList()));
doThrow(test).when(transaction).send(any(DataPacket.class));
- try {
- senderSupplier.get().sendFiles();
- } catch (IOException e) {
- assertEquals(test, e.getCause());
- throw e;
- }
+
+ assertThrows(IOException.class, () -> senderSupplier.get().sendFiles());
+ }
+
+ private void setTransactionCompletion() throws IOException {
+ when(transaction.complete()).thenAnswer(invocation -> {
+ verify(siteToSiteClient).createTransaction(TransferDirection.SEND);
+ verify(transaction).confirm();
+ return transactionCompletion;
+ });
}
}
diff --git a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/SystemExitCapturer.java b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/SystemExitCapturer.java
index e4552a362e..8183d86887 100644
--- a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/SystemExitCapturer.java
+++ b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/SystemExitCapturer.java
@@ -20,11 +20,10 @@ package org.apache.nifi.toolkit.tls;
import org.apache.nifi.toolkit.tls.commandLine.ExitCode;
import java.io.Closeable;
-import java.io.IOException;
import java.security.Permission;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
public class SystemExitCapturer implements Closeable {
private final SecurityManager originalSecurityManager;
@@ -52,16 +51,13 @@ public class SystemExitCapturer implements Closeable {
}
public void runAndAssertExitCode(Runnable runnable, ExitCode exitCode) {
- try {
- runnable.run();
- fail("Expecting exit code " + exitCode);
- } catch (ExitException e) {
- assertEquals("Expecting exit code: " + exitCode + ", got " + ExitCode.values()[e.getExitCode()], exitCode.ordinal(), e.getExitCode());
- }
+ final ExitException e = assertThrows(ExitException.class, runnable::run);
+
+ assertEquals(exitCode.ordinal(), e.getExitCode(), "Expecting exit code: " + exitCode + ", got " + ExitCode.values()[e.getExitCode()]);
}
@Override
- public void close() throws IOException {
+ public void close() {
System.setSecurityManager(originalSecurityManager);
}
}
diff --git a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/TlsToolkitMainTest.java b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/TlsToolkitMainTest.java
index 971b6f23f5..7a642ee8cf 100644
--- a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/TlsToolkitMainTest.java
+++ b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/TlsToolkitMainTest.java
@@ -19,28 +19,28 @@ package org.apache.nifi.toolkit.tls;
import org.apache.nifi.toolkit.tls.commandLine.ExitCode;
import org.apache.nifi.util.StringUtils;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import java.io.IOException;
-import static org.junit.Assert.assertArrayEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
public class TlsToolkitMainTest {
private TlsToolkitMain tlsToolkitMain;
private SystemExitCapturer systemExitCapturer;
- @Before
+ @BeforeEach
public void setup() {
systemExitCapturer = new SystemExitCapturer();
tlsToolkitMain = new TlsToolkitMain();
}
- @After
+ @AfterEach
public void tearDown() throws IOException {
systemExitCapturer.close();
}
@@ -61,9 +61,7 @@ public class TlsToolkitMainTest {
@Test
public void testAllMainClassesHaveMain() {
- tlsToolkitMain.getMainMap().keySet().stream().map(String::toLowerCase).forEach(service -> {
- assertNotNull(tlsToolkitMain.getMain(service));
- });
+ tlsToolkitMain.getMainMap().keySet().stream().map(String::toLowerCase).forEach(service -> assertNotNull(tlsToolkitMain.getMain(service)));
}
@Test
diff --git a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/configuration/InstanceDefinitionTest.java b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/configuration/InstanceDefinitionTest.java
index 9d4fcd0fbd..57bc112355 100644
--- a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/configuration/InstanceDefinitionTest.java
+++ b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/configuration/InstanceDefinitionTest.java
@@ -17,16 +17,17 @@
package org.apache.nifi.toolkit.tls.configuration;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import java.util.Arrays;
+import java.util.Collections;
import java.util.List;
import java.util.function.Supplier;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
import java.util.stream.Stream;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@@ -44,26 +45,26 @@ public class InstanceDefinitionTest {
@Test
public void testCreateDefinitionsSingleHostSingleName() {
- testCreateDefinitions(Arrays.asList("hostname"), Arrays.asList("hostname"), Arrays.asList(1), false);
+ testCreateDefinitions(Collections.singletonList("hostname"), Collections.singletonList("hostname"), Collections.singletonList(1), false);
}
@Test
public void testCreateDefinitionsSingleHostnameOneNumberInParens() {
- testCreateDefinitions(Arrays.asList("hostname(20)"),
+ testCreateDefinitions(Collections.singletonList("hostname(20)"),
IntStream.range(1, 21).mapToObj(operand -> "hostname").collect(Collectors.toList()),
integerRange(1, 20).collect(Collectors.toList()), false);
}
@Test
public void testCreateDefinitionsSingleHostnameTwoNumbersInParens() {
- testCreateDefinitions(Arrays.asList("hostname(5-20)"),
+ testCreateDefinitions(Collections.singletonList("hostname(5-20)"),
IntStream.range(5, 21).mapToObj(operand -> "hostname").collect(Collectors.toList()),
integerRange(5, 20).collect(Collectors.toList()), false);
}
@Test
public void testCreateDefinitionsMultipleHostnamesWithMultipleNumbers() {
- testCreateDefinitions(Arrays.asList("host[10]name[02-5](20)"),
+ testCreateDefinitions(Collections.singletonList("host[10]name[02-5](20)"),
integerRange(1, 10).flatMap(v -> integerRange(2, 5).flatMap(v2 -> integerRange(1, 20).map(v3 -> "host" + v + "name" + String.format("%02d", v2)))).collect(Collectors.toList()),
integerRange(1, 10).flatMap(val -> integerRange(2, 5).flatMap(val2 -> integerRange(1, 20))).collect(Collectors.toList()), false);
}
@@ -92,8 +93,8 @@ public class InstanceDefinitionTest {
}
List<String> trustStorePasswords = IntStream.range(0, expectedHostnames.size()).mapToObj(value -> "testTrustStorePassword" + value).collect(Collectors.toList());
List<InstanceDefinition> instanceDefinitions = InstanceDefinition.createDefinitions(null, hostnameExpressions.stream(),
- mockSupplier(keyStorePasswords.toArray(new String[keyStorePasswords.size()])), keyPasswords == null ? null : mockSupplier(keyPasswords.toArray(new String[keyPasswords.size()])),
- mockSupplier(trustStorePasswords.toArray(new String[trustStorePasswords.size()])));
+ mockSupplier(keyStorePasswords.toArray(new String[0])), keyPasswords == null ? null : mockSupplier(keyPasswords.toArray(new String[0])),
+ mockSupplier(trustStorePasswords.toArray(new String[0])));
testCreateDefinitionsOutput(instanceDefinitions, expectedHostnames, expectedNumbers, keyStorePasswords, keyPasswords, trustStorePasswords);
}
diff --git a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/configuration/InstanceIdentifierTest.java b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/configuration/InstanceIdentifierTest.java
index c00e7eaa47..6340fea2a3 100644
--- a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/configuration/InstanceIdentifierTest.java
+++ b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/configuration/InstanceIdentifierTest.java
@@ -17,9 +17,10 @@
package org.apache.nifi.toolkit.tls.configuration;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import java.util.Arrays;
+import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.concurrent.atomic.AtomicInteger;
@@ -28,7 +29,8 @@ import java.util.stream.Collectors;
import java.util.stream.IntStream;
import java.util.stream.Stream;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
public class InstanceIdentifierTest {
@@ -62,9 +64,9 @@ public class InstanceIdentifierTest {
testExtractHostnames("test[002]", "test001", "test002");
}
- @Test(expected = IllegalArgumentException.class)
+ @Test
public void testExtractHostnamesNoNumber() {
- testExtractHostnames("test[]", "test");
+ assertThrows(IllegalArgumentException.class, () -> testExtractHostnames("test[]", "test"));
}
@Test
@@ -72,43 +74,43 @@ public class InstanceIdentifierTest {
testExtractHostnames("test[1-3]name[1-3]", "test1name1", "test1name2", "test1name3", "test2name1", "test2name2", "test2name3", "test3name1", "test3name2", "test3name3");
}
- @Test(expected = IllegalArgumentException.class)
+ @Test
public void testExtractHostnamesUnmatched() {
- testExtractHostnames("test[");
+ assertThrows(IllegalArgumentException.class, () -> testExtractHostnames("test["));
}
- @Test(expected = IllegalArgumentException.class)
+ @Test
public void testExtractHostnamesSpace() {
- testExtractHostnames("test[ 1-2]");
+ assertThrows(IllegalArgumentException.class, () -> testExtractHostnames("test[ 1-2]"));
}
- @Test(expected = IllegalArgumentException.class)
+ @Test
public void testExtractHostnamesMultipleHyphens() {
- testExtractHostnames("test[1-2-3]");
+ assertThrows(IllegalArgumentException.class, () -> testExtractHostnames("test[1-2-3]"));
}
@Test
public void testCreateDefinitionsSingleHostSingleName() {
- testCreateIdentifiers(Arrays.asList("hostname"), Arrays.asList("hostname"), Arrays.asList(1));
+ testCreateIdentifiers(Collections.singletonList("hostname"), Collections.singletonList("hostname"), Collections.singletonList(1));
}
@Test
public void testCreateDefinitionsSingleHostnameOneNumberInParens() {
- testCreateIdentifiers(Arrays.asList("hostname(20)"),
+ testCreateIdentifiers(Collections.singletonList("hostname(20)"),
IntStream.range(1, 21).mapToObj(operand -> "hostname").collect(Collectors.toList()),
integerRange(1, 20).collect(Collectors.toList()));
}
@Test
public void testCreateDefinitionsSingleHostnameTwoNumbersInParens() {
- testCreateIdentifiers(Arrays.asList("hostname(5-20)"),
+ testCreateIdentifiers(Collections.singletonList("hostname(5-20)"),
IntStream.range(5, 21).mapToObj(operand -> "hostname").collect(Collectors.toList()),
integerRange(5, 20).collect(Collectors.toList()));
}
@Test
public void testCreateDefinitionsMultipleHostnamesWithMultipleNumbers() {
- testCreateIdentifiers(Arrays.asList("host[10]name[02-5](20)"),
+ testCreateIdentifiers(Collections.singletonList("host[10]name[02-5](20)"),
integerRange(1, 10).flatMap(v -> integerRange(2, 5).flatMap(v2 -> integerRange(1, 20).map(v3 -> "host" + v + "name" + String.format("%02d", v2)))).collect(Collectors.toList()),
integerRange(1, 10).flatMap(val -> integerRange(2, 5).flatMap(val2 -> integerRange(1, 20))).collect(Collectors.toList()));
}
@@ -137,9 +139,9 @@ public class InstanceIdentifierTest {
InstanceIdentifier.extractHostnames(b).map(s -> new InstanceIdentifier(s, 1)).forEach(action);
}
- @Test(expected = IllegalArgumentException.class)
+ @Test
public void testCreateIdentifiersCharactersAfterNumber() {
- InstanceIdentifier.createIdentifiers(Stream.of("test(2)a")).count();
+ assertThrows(IllegalArgumentException.class, () -> InstanceIdentifier.createIdentifiers(Stream.of("test(2)a")).count());
}
private Stream<Integer> integerRange(int start, int endInclusive) {
diff --git a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/manager/writer/NifiPropertiesTlsClientConfigWriterTest.java b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/manager/writer/NifiPropertiesTlsClientConfigWriterTest.java
index 87c9759232..8d48157817 100644
--- a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/manager/writer/NifiPropertiesTlsClientConfigWriterTest.java
+++ b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/manager/writer/NifiPropertiesTlsClientConfigWriterTest.java
@@ -23,11 +23,11 @@ import org.apache.nifi.toolkit.tls.properties.NiFiPropertiesWriter;
import org.apache.nifi.toolkit.tls.properties.NiFiPropertiesWriterFactory;
import org.apache.nifi.toolkit.tls.util.OutputStreamFactory;
import org.apache.nifi.util.NiFiProperties;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.mockito.junit.jupiter.MockitoExtension;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
@@ -36,11 +36,11 @@ import java.io.IOException;
import java.util.ArrayList;
import java.util.Properties;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotEquals;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@ExtendWith(MockitoExtension.class)
public class NifiPropertiesTlsClientConfigWriterTest {
@Mock
NiFiPropertiesWriterFactory niFiPropertiesWriterFactory;
@@ -62,7 +62,7 @@ public class NifiPropertiesTlsClientConfigWriterTest {
private String keyStoreType;
private String trustStoreType;
- @Before
+ @BeforeEach
public void setup() throws IOException {
testHostname = "testHostname";
hostNum = 22;
@@ -103,12 +103,6 @@ public class NifiPropertiesTlsClientConfigWriterTest {
assertNotEquals(0, nifiPropertiesTlsClientConfigWriter.getIncrementingPropertyMap().size());
}
- @Test(expected = NumberFormatException.class)
- public void testBadPortNum() throws IOException {
- nifiPropertiesTlsClientConfigWriter.getOverlayProperties().setProperty(nifiPropertiesTlsClientConfigWriter.getIncrementingPropertyMap().keySet().iterator().next(), "notAnInt");
- nifiPropertiesTlsClientConfigWriter.write(tlsClientConfig, outputStreamFactory);
- }
-
@Test
public void testNoHostnameProperties() throws IOException {
nifiPropertiesTlsClientConfigWriter.getOverlayProperties().setProperty(NifiPropertiesTlsClientConfigWriter.HOSTNAME_PROPERTIES, "");
diff --git a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/properties/NifiPropertiesWriterTest.java b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/properties/NifiPropertiesWriterTest.java
index c3ef345f41..5f51f4da5c 100644
--- a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/properties/NifiPropertiesWriterTest.java
+++ b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/properties/NifiPropertiesWriterTest.java
@@ -18,9 +18,9 @@
package org.apache.nifi.toolkit.tls.properties;
import org.apache.nifi.util.NiFiProperties;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.BeforeAll;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
@@ -31,18 +31,18 @@ import java.util.HashSet;
import java.util.Properties;
import java.util.Set;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
public class NifiPropertiesWriterTest {
private static NiFiPropertiesWriterFactory nifiPropertiesWriterFactory;
private NiFiPropertiesWriter niFiPropertiesWriter;
- @BeforeClass
- public static void beforeClass() throws IOException {
+ @BeforeAll
+ public static void setFactory() throws IOException {
nifiPropertiesWriterFactory = new NiFiPropertiesWriterFactory();
}
- @Before
+ @BeforeEach
public void setup() throws IOException {
niFiPropertiesWriter = nifiPropertiesWriterFactory.create();
}
diff --git a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/TlsCertificateAuthorityTest.java b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/TlsCertificateAuthorityTest.java
index cfedde74cd..a7bf10f409 100644
--- a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/TlsCertificateAuthorityTest.java
+++ b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/TlsCertificateAuthorityTest.java
@@ -18,6 +18,7 @@
package org.apache.nifi.toolkit.tls.service;
import com.fasterxml.jackson.databind.ObjectMapper;
+import org.apache.nifi.remote.io.socket.NetworkUtils;
import org.apache.nifi.security.util.KeystoreType;
import org.apache.nifi.security.util.KeyStoreUtils;
import org.apache.nifi.toolkit.tls.configuration.TlsClientConfig;
@@ -28,8 +29,8 @@ import org.apache.nifi.toolkit.tls.service.server.TlsCertificateAuthorityService
import org.apache.nifi.toolkit.tls.standalone.TlsToolkitStandalone;
import org.apache.nifi.toolkit.tls.util.InputStreamFactory;
import org.apache.nifi.toolkit.tls.util.OutputStreamFactory;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
@@ -37,7 +38,6 @@ import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.OutputStream;
-import java.net.ServerSocket;
import java.nio.charset.StandardCharsets;
import java.security.InvalidKeyException;
import java.security.KeyStore;
@@ -53,13 +53,13 @@ import java.security.cert.Certificate;
import java.security.cert.CertificateException;
import java.security.cert.CertificateParsingException;
import java.security.cert.X509Certificate;
-import java.util.Arrays;
+import java.util.Collections;
import java.util.Iterator;
import java.util.List;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.AdditionalMatchers.or;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.mock;
@@ -80,7 +80,7 @@ public class TlsCertificateAuthorityTest {
private ByteArrayOutputStream clientConfigFileOutputStream;
private String subjectAlternativeName;
- @Before
+ @BeforeEach
public void setup() throws FileNotFoundException {
objectMapper = new ObjectMapper();
serverConfigFile = new File("fake.server.config");
@@ -96,7 +96,7 @@ public class TlsCertificateAuthorityTest {
subjectAlternativeName = "nifi.apache.org";
String myTestTokenUseSomethingStronger = "myTestTokenUseSomethingStronger";
- int port = availablePort();
+ int port = NetworkUtils.getAvailableTcpPort();
serverConfig = new TlsConfig();
serverConfig.setCaHostname("localhost");
@@ -113,7 +113,7 @@ public class TlsCertificateAuthorityTest {
clientConfig.setKeyStore(clientKeyStore);
clientConfig.setTrustStore(clientTrustStore);
clientConfig.setToken(myTestTokenUseSomethingStronger);
- clientConfig.setDomainAlternativeNames(Arrays.asList(subjectAlternativeName));
+ clientConfig.setDomainAlternativeNames(Collections.singletonList(subjectAlternativeName));
clientConfig.setPort(port);
clientConfig.setKeySize(2048);
clientConfig.initDefaults();
@@ -194,14 +194,10 @@ public class TlsCertificateAuthorityTest {
}
@Test
- public void testTokenMismatch() throws Exception {
+ public void testTokenMismatch() {
serverConfig.setToken("a different token...");
- try {
- testClientGetCertSamePasswordsForKeyAndKeyStore();
- fail("Expected error with mismatching token");
- } catch (IOException e) {
- assertTrue(e.getMessage().contains("forbidden"));
- }
+
+ assertThrows(IOException.class, () -> testClientGetCertSamePasswordsForKeyAndKeyStore());
}
private void validate() throws CertificateException, InvalidKeyException, NoSuchAlgorithmException, KeyStoreException, SignatureException,
@@ -283,24 +279,4 @@ public class TlsCertificateAuthorityTest {
}
return containsSAN;
}
-
- /**
- * Will determine the available port used by ca server
- */
- private int availablePort() {
- ServerSocket s = null;
- try {
- s = new ServerSocket(0);
- s.setReuseAddress(true);
- return s.getLocalPort();
- } catch (Exception e) {
- throw new IllegalStateException("Failed to discover available port.", e);
- } finally {
- try {
- s.close();
- } catch (IOException e) {
- // ignore
- }
- }
- }
}
diff --git a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/client/TlsCertificateAuthorityClientCommandLineTest.java b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/client/TlsCertificateAuthorityClientCommandLineTest.java
index a75290587e..f8ac6b8f1f 100644
--- a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/client/TlsCertificateAuthorityClientCommandLineTest.java
+++ b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/client/TlsCertificateAuthorityClientCommandLineTest.java
@@ -23,23 +23,22 @@ import org.apache.nifi.toolkit.tls.commandLine.ExitCode;
import org.apache.nifi.toolkit.tls.configuration.TlsClientConfig;
import org.apache.nifi.toolkit.tls.configuration.TlsConfig;
import org.apache.nifi.toolkit.tls.service.BaseCertificateAuthorityCommandLine;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import java.io.IOException;
import java.net.InetAddress;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertThrows;
public class TlsCertificateAuthorityClientCommandLineTest {
private TlsCertificateAuthorityClientCommandLine tlsCertificateAuthorityClientCommandLine;
private String testToken;
- @Before
+ @BeforeEach
public void setup() {
tlsCertificateAuthorityClientCommandLine = new TlsCertificateAuthorityClientCommandLine();
testToken = "testToken16bytes";
@@ -47,12 +46,9 @@ public class TlsCertificateAuthorityClientCommandLineTest {
@Test
public void testNoToken() {
- try {
- tlsCertificateAuthorityClientCommandLine.parse(new String[0]);
- fail("Expected failure with no token argument");
- } catch (CommandLineParseException e) {
- assertEquals(ExitCode.ERROR_TOKEN_ARG_EMPTY, e.getExitCode());
- }
+ final CommandLineParseException e = assertThrows(CommandLineParseException.class, () -> tlsCertificateAuthorityClientCommandLine.parse());
+
+ assertEquals(ExitCode.ERROR_TOKEN_ARG_EMPTY, e.getExitCode());
}
@Test
@@ -61,7 +57,7 @@ public class TlsCertificateAuthorityClientCommandLineTest {
TlsClientConfig clientConfig = tlsCertificateAuthorityClientCommandLine.createClientConfig();
assertEquals(TlsConfig.DEFAULT_HOSTNAME, clientConfig.getCaHostname());
- Assert.assertEquals(new TlsConfig().calcDefaultDn(InetAddress.getLocalHost().getHostName()), clientConfig.getDn());
+ assertEquals(new TlsConfig().calcDefaultDn(InetAddress.getLocalHost().getHostName()), clientConfig.getDn());
assertEquals(TlsCertificateAuthorityClientCommandLine.KEYSTORE + TlsConfig.DEFAULT_KEY_STORE_TYPE.toLowerCase(), clientConfig.getKeyStore());
assertEquals(TlsConfig.DEFAULT_KEY_STORE_TYPE, clientConfig.getKeyStoreType());
assertNull(clientConfig.getKeyStorePassword());
@@ -94,12 +90,9 @@ public class TlsCertificateAuthorityClientCommandLineTest {
@Test
public void testHelp() {
- try {
- tlsCertificateAuthorityClientCommandLine.parse("-h");
- fail("Expected exception");
- } catch (CommandLineParseException e) {
- assertEquals(ExitCode.HELP, e.getExitCode());
- }
+ final CommandLineParseException e = assertThrows(CommandLineParseException.class, () -> tlsCertificateAuthorityClientCommandLine.parse("-h"));
+
+ assertEquals(ExitCode.HELP, e.getExitCode());
}
@Test
diff --git a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/client/TlsCertificateSigningRequestPerformerTest.java b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/client/TlsCertificateSigningRequestPerformerTest.java
index f5c48772eb..9e411ba181 100644
--- a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/client/TlsCertificateSigningRequestPerformerTest.java
+++ b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/client/TlsCertificateSigningRequestPerformerTest.java
@@ -34,11 +34,11 @@ import org.apache.nifi.toolkit.tls.util.TlsHelper;
import org.bouncycastle.operator.OperatorCreationException;
import org.bouncycastle.pkcs.jcajce.JcaPKCS10CertificationRequest;
import org.eclipse.jetty.server.Response;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.mockito.junit.jupiter.MockitoExtension;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -51,15 +51,15 @@ import java.util.ArrayList;
import java.util.List;
import java.util.function.Supplier;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
-@RunWith(MockitoJUnitRunner.class)
+@ExtendWith(MockitoExtension.class)
public class TlsCertificateSigningRequestPerformerTest {
@Mock
Supplier<HttpClientBuilder> httpClientBuilderSupplier;
@@ -90,7 +90,7 @@ public class TlsCertificateSigningRequestPerformerTest {
private byte[] testHmac;
private String testSignedCsr;
- @Before
+ @BeforeEach
public void setup() throws GeneralSecurityException, OperatorCreationException, IOException {
objectMapper = new ObjectMapper();
keyPair = TlsHelper.generateKeyPair(TlsConfig.DEFAULT_KEY_PAIR_ALGORITHM, TlsConfig.DEFAULT_KEY_SIZE);
@@ -151,79 +151,61 @@ public class TlsCertificateSigningRequestPerformerTest {
}
@Test
- public void testBadStatusCode() throws Exception {
+ public void testBadStatusCode() {
statusCode = Response.SC_FORBIDDEN;
tlsCertificateAuthorityResponse = new TlsCertificateAuthorityResponse();
- try {
- tlsCertificateSigningRequestPerformer.perform(keyPair);
- fail("Expected IOE");
- } catch (IOException e) {
- assertTrue(e.getMessage().startsWith(TlsCertificateSigningRequestPerformer.RECEIVED_RESPONSE_CODE + statusCode));
- }
+
+ final IOException e = assertThrows(IOException.class, () -> tlsCertificateSigningRequestPerformer.perform(keyPair));
+ assertTrue(e.getMessage().startsWith(TlsCertificateSigningRequestPerformer.RECEIVED_RESPONSE_CODE + statusCode));
}
@Test
- public void test0CertSize() throws Exception {
+ public void test0CertSize() {
statusCode = Response.SC_OK;
tlsCertificateAuthorityResponse = new TlsCertificateAuthorityResponse();
- try {
- tlsCertificateSigningRequestPerformer.perform(keyPair);
- fail("Expected IOE");
- } catch (IOException e) {
- assertEquals(TlsCertificateSigningRequestPerformer.EXPECTED_ONE_CERTIFICATE, e.getMessage());
- }
+
+ final IOException e = assertThrows(IOException.class, () -> tlsCertificateSigningRequestPerformer.perform(keyPair));
+ assertEquals(TlsCertificateSigningRequestPerformer.EXPECTED_ONE_CERTIFICATE, e.getMessage());
}
@Test
- public void test2CertSize() throws Exception {
+ public void test2CertSize() {
certificates.add(caCertificate);
certificates.add(caCertificate);
statusCode = Response.SC_OK;
tlsCertificateAuthorityResponse = new TlsCertificateAuthorityResponse();
- try {
- tlsCertificateSigningRequestPerformer.perform(keyPair);
- fail("Expected IOE");
- } catch (IOException e) {
- assertEquals(TlsCertificateSigningRequestPerformer.EXPECTED_ONE_CERTIFICATE, e.getMessage());
- }
+
+ final IOException e = assertThrows(IOException.class, () -> tlsCertificateSigningRequestPerformer.perform(keyPair));
+ assertEquals(TlsCertificateSigningRequestPerformer.EXPECTED_ONE_CERTIFICATE, e.getMessage());
}
@Test
- public void testNoHmac() throws Exception {
+ public void testNoHmac() {
certificates.add(caCertificate);
statusCode = Response.SC_OK;
tlsCertificateAuthorityResponse = new TlsCertificateAuthorityResponse(null, testSignedCsr);
- try {
- tlsCertificateSigningRequestPerformer.perform(keyPair);
- fail("Expected IOE");
- } catch (IOException e) {
- assertEquals(TlsCertificateSigningRequestPerformer.EXPECTED_RESPONSE_TO_CONTAIN_HMAC, e.getMessage());
- }
+
+ final IOException e = assertThrows(IOException.class, () -> tlsCertificateSigningRequestPerformer.perform(keyPair));
+ assertEquals(TlsCertificateSigningRequestPerformer.EXPECTED_RESPONSE_TO_CONTAIN_HMAC, e.getMessage());
}
@Test
- public void testBadHmac() throws Exception {
+ public void testBadHmac() {
certificates.add(caCertificate);
statusCode = Response.SC_OK;
tlsCertificateAuthorityResponse = new TlsCertificateAuthorityResponse("badHmac".getBytes(StandardCharsets.UTF_8), testSignedCsr);
- try {
- tlsCertificateSigningRequestPerformer.perform(keyPair);
- fail("Expected IOE");
- } catch (IOException e) {
- assertEquals(TlsCertificateSigningRequestPerformer.UNEXPECTED_HMAC_RECEIVED_POSSIBLE_MAN_IN_THE_MIDDLE, e.getMessage());
- }
+
+ final IOException e = assertThrows(IOException.class, () -> tlsCertificateSigningRequestPerformer.perform(keyPair));
+ assertEquals(TlsCertificateSigningRequestPerformer.UNEXPECTED_HMAC_RECEIVED_POSSIBLE_MAN_IN_THE_MIDDLE, e.getMessage());
}
@Test
- public void testNoCertificate() throws Exception {
+ public void testNoCertificate() {
certificates.add(caCertificate);
statusCode = Response.SC_OK;
tlsCertificateAuthorityResponse = new TlsCertificateAuthorityResponse(testHmac, null);
- try {
- tlsCertificateSigningRequestPerformer.perform(keyPair);
- fail("Expected IOE");
- } catch (IOException e) {
- assertEquals(TlsCertificateSigningRequestPerformer.EXPECTED_RESPONSE_TO_CONTAIN_CERTIFICATE, e.getMessage());
- }
+
+ final IOException e = assertThrows(IOException.class, () -> tlsCertificateSigningRequestPerformer.perform(keyPair));
+ assertEquals(TlsCertificateSigningRequestPerformer.EXPECTED_RESPONSE_TO_CONTAIN_CERTIFICATE, e.getMessage());
}
}
diff --git a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/server/TlsCertificateAuthorityServiceCommandLineTest.java b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/server/TlsCertificateAuthorityServiceCommandLineTest.java
index 3e85a904be..9102f1757f 100644
--- a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/server/TlsCertificateAuthorityServiceCommandLineTest.java
+++ b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/server/TlsCertificateAuthorityServiceCommandLineTest.java
@@ -21,18 +21,18 @@ import org.apache.nifi.toolkit.tls.commandLine.CommandLineParseException;
import org.apache.nifi.toolkit.tls.configuration.TlsConfig;
import org.apache.nifi.toolkit.tls.service.BaseCertificateAuthorityCommandLine;
import org.apache.nifi.toolkit.tls.util.InputStreamFactory;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.mockito.junit.jupiter.MockitoExtension;
import java.io.IOException;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNull;
-@RunWith(MockitoJUnitRunner.class)
+@ExtendWith(MockitoExtension.class)
public class TlsCertificateAuthorityServiceCommandLineTest {
@Mock
InputStreamFactory inputStreamFactory;
@@ -41,7 +41,7 @@ public class TlsCertificateAuthorityServiceCommandLineTest {
String testToken;
- @Before
+ @BeforeEach
public void setup() {
tlsCertificateAuthorityServiceCommandLine = new TlsCertificateAuthorityServiceCommandLine(inputStreamFactory);
testToken = "testToken16bytes";
diff --git a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/server/TlsCertificateAuthorityServiceHandlerTest.java b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/server/TlsCertificateAuthorityServiceHandlerTest.java
index 54e49ca9d8..86220c061c 100644
--- a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/server/TlsCertificateAuthorityServiceHandlerTest.java
+++ b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/service/server/TlsCertificateAuthorityServiceHandlerTest.java
@@ -17,10 +17,11 @@
package org.apache.nifi.toolkit.tls.service.server;
-import static org.junit.Assert.assertArrayEquals;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.verify;
@@ -34,11 +35,8 @@ import java.io.StringReader;
import java.io.StringWriter;
import java.nio.charset.StandardCharsets;
import java.security.GeneralSecurityException;
-import java.security.InvalidKeyException;
import java.security.KeyPair;
import java.security.KeyPairGenerator;
-import java.security.NoSuchAlgorithmException;
-import java.security.NoSuchProviderException;
import java.security.cert.X509Certificate;
import java.util.Arrays;
import java.util.List;
@@ -54,31 +52,30 @@ import org.bouncycastle.asn1.pkcs.PKCSObjectIdentifiers;
import org.bouncycastle.asn1.x500.X500Name;
import org.bouncycastle.asn1.x509.Extension;
import org.bouncycastle.asn1.x509.Extensions;
-import org.bouncycastle.cert.crmf.CRMFException;
import org.bouncycastle.operator.OperatorCreationException;
import org.bouncycastle.operator.jcajce.JcaContentSignerBuilder;
import org.bouncycastle.pkcs.jcajce.JcaPKCS10CertificationRequest;
import org.bouncycastle.pkcs.jcajce.JcaPKCS10CertificationRequestBuilder;
import org.eclipse.jetty.server.Request;
import org.eclipse.jetty.server.Response;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
-import org.mockito.junit.MockitoJUnitRunner;
+import org.mockito.junit.jupiter.MockitoExtension;
-@RunWith(MockitoJUnitRunner.class)
+@ExtendWith(MockitoExtension.class)
public class TlsCertificateAuthorityServiceHandlerTest {
X509Certificate caCert;
@Mock
Request baseRequest;
- @Mock
+ @Mock(lenient = true)
HttpServletRequest httpServletRequest;
- @Mock
+ @Mock(lenient = true)
HttpServletResponse httpServletResponse;
JcaPKCS10CertificationRequest jcaPKCS10CertificationRequest;
@@ -108,7 +105,7 @@ public class TlsCertificateAuthorityServiceHandlerTest {
private static final String SUBJECT_DN = "CN=NiFi Test Server,OU=Security,O=Apache,ST=CA,C=US";
private static final List<String> SUBJECT_ALT_NAMES = Arrays.asList("127.0.0.1", "nifi.nifi.apache.org");
- @Before
+ @BeforeEach
public void setup() throws Exception {
testToken = "testTokenTestToken";
testPemEncodedSignedCertificate = "testPemEncodedSignedCertificate";
@@ -139,7 +136,7 @@ public class TlsCertificateAuthorityServiceHandlerTest {
}
@Test
- public void testSuccess() throws IOException, ServletException, GeneralSecurityException, CRMFException {
+ public void testSuccess() throws IOException, ServletException, GeneralSecurityException {
tlsCertificateAuthorityRequest = new TlsCertificateAuthorityRequest(testHmac, testPemEncodedCsr);
tlsCertificateAuthorityServiceHandler.handle(null, baseRequest, httpServletRequest, httpServletResponse);
assertEquals(Response.SC_OK, statusCode);
@@ -167,21 +164,20 @@ public class TlsCertificateAuthorityServiceHandlerTest {
}
@Test
- public void testForbidden() throws IOException, ServletException, NoSuchAlgorithmException, CRMFException, NoSuchProviderException, InvalidKeyException {
+ public void testForbidden() throws IOException, ServletException {
tlsCertificateAuthorityRequest = new TlsCertificateAuthorityRequest("badHmac".getBytes(StandardCharsets.UTF_8), testPemEncodedCsr);
tlsCertificateAuthorityServiceHandler.handle(null, baseRequest, httpServletRequest, httpServletResponse);
assertEquals(Response.SC_FORBIDDEN, statusCode);
assertEquals(TlsCertificateAuthorityServiceHandler.FORBIDDEN, getResponse().getError());
}
- @Test(expected = ServletException.class)
- public void testServletException() throws IOException, ServletException {
- tlsCertificateAuthorityServiceHandler.handle(null, baseRequest, httpServletRequest, httpServletResponse);
+ @Test
+ public void testServletException() {
+ assertThrows(ServletException.class, () -> tlsCertificateAuthorityServiceHandler.handle(null, baseRequest, httpServletRequest, httpServletResponse));
}
@Test
public void testSANAgainUsingCertificationRequestMethod() throws GeneralSecurityException, IOException, OperatorCreationException {
- // Arrange
KeyPairGenerator generator = KeyPairGenerator.getInstance("RSA");
KeyPair keyPair = generator.generateKeyPair();
Extensions exts = TlsHelper.createDomainAlternativeNamesExtensions(SUBJECT_ALT_NAMES, SUBJECT_DN);
@@ -197,18 +193,16 @@ public class TlsCertificateAuthorityServiceHandlerTest {
JcaPKCS10CertificationRequest jcaPKCS10CertificationDecoded = TlsHelper.parseCsr(tlsCertificateAuthorityRequest.getCsr());
- // Act
Extensions extensions = CertificateUtils.getExtensionsFromCSR(jcaPKCS10CertificationDecoded);
// Satisfy @After requirement
baseRequest.setHandled(true);
- // Assert
- assertNotNull("The extensions parsed from the CSR were found to be null when they should have been present.", extensions);
- assertNotNull("The Subject Alternate Name parsed from the CSR was found to be null when it should have been present.", extensions.getExtension(Extension.subjectAlternativeName));
+ assertNotNull(extensions, "The extensions parsed from the CSR were found to be null when they should have been present.");
+ assertNotNull(extensions.getExtension(Extension.subjectAlternativeName), "The Subject Alternate Name parsed from the CSR was found to be null when it should have been present.");
assertTrue(extensions.equivalent(exts));
}
- @After
+ @AfterEach
public void verifyHandled() {
verify(baseRequest).setHandled(true);
}
diff --git a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/standalone/TlsToolkitStandaloneCommandLineTest.java b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/standalone/TlsToolkitStandaloneCommandLineTest.java
index b4d7afcfeb..d846ba7ebb 100644
--- a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/standalone/TlsToolkitStandaloneCommandLineTest.java
+++ b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/standalone/TlsToolkitStandaloneCommandLineTest.java
@@ -17,17 +17,18 @@
package org.apache.nifi.toolkit.tls.standalone;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.IOException;
+import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.security.KeyStoreException;
@@ -36,6 +37,7 @@ import java.security.UnrecoverableKeyException;
import java.util.Collections;
import java.util.List;
import java.util.Map;
+import java.util.Objects;
import java.util.Properties;
import java.util.function.Function;
import java.util.stream.Collectors;
@@ -47,53 +49,40 @@ import org.apache.nifi.toolkit.tls.configuration.StandaloneConfig;
import org.apache.nifi.toolkit.tls.configuration.TlsConfig;
import org.apache.nifi.toolkit.tls.properties.NiFiPropertiesWriter;
import org.apache.nifi.toolkit.tls.util.PasswordUtil;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.ExpectedException;
-import org.junit.rules.TemporaryFolder;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.io.TempDir;
public class TlsToolkitStandaloneCommandLineTest {
- private SecureRandom secureRandom;
private TlsToolkitStandaloneCommandLine tlsToolkitStandaloneCommandLine;
-
final String CHANGEIT = "changeit";
final String keyPass = CHANGEIT;
final String keystorePass = CHANGEIT;
final String wrongPass = "wrongpass";
private File outputFolder = null;
- final String keystoreFile = getClass().getClassLoader().getResource("keystore.jks").getFile();
-
- @Rule
- public TemporaryFolder tempFolder = new TemporaryFolder();
+ final String keystoreFile = Objects.requireNonNull(getClass().getClassLoader().getResource("keystore.jks")).getFile();
- @Before
- public void setup() throws IOException {
- secureRandom = new SecureRandom();
+ @BeforeEach
+ public void setup(@TempDir Path tempDir) throws IOException {
+ final SecureRandom secureRandom = new SecureRandom();
tlsToolkitStandaloneCommandLine = new TlsToolkitStandaloneCommandLine(new PasswordUtil(secureRandom));
- outputFolder = tempFolder.newFolder("splitKeystoreOutputDir");
+ final Path outputDir = Files.createTempDirectory(tempDir, "splitKeystoreOutputDir");
+ outputFolder = outputDir.toFile();
}
@Test
public void testHelp() {
- try {
- tlsToolkitStandaloneCommandLine.parse("-h");
- fail("Expected usage and help exit");
- } catch (CommandLineParseException e) {
- Assert.assertEquals(ExitCode.HELP, e.getExitCode());
- }
+ final CommandLineParseException e = assertThrows(CommandLineParseException.class, () -> tlsToolkitStandaloneCommandLine.parse("-h"));
+
+ assertEquals(ExitCode.HELP, e.getExitCode());
}
@Test
public void testUnknownArg() {
- try {
- tlsToolkitStandaloneCommandLine.parse("--unknownArg");
- fail("Expected error parsing command line");
- } catch (CommandLineParseException e) {
- assertEquals(ExitCode.ERROR_PARSING_COMMAND_LINE, e.getExitCode());
- }
+ final CommandLineParseException e = assertThrows(CommandLineParseException.class, () -> tlsToolkitStandaloneCommandLine.parse("--unknownArg"));
+
+ assertEquals(ExitCode.ERROR_PARSING_COMMAND_LINE, e.getExitCode());
}
@Test
@@ -105,30 +94,27 @@ public class TlsToolkitStandaloneCommandLineTest {
@Test
public void testKeySizeArgNotInteger() {
- try {
- tlsToolkitStandaloneCommandLine.parse("-k", "badVal");
- fail("Expected bad keysize exit code");
- } catch (CommandLineParseException e) {
- assertEquals(ExitCode.ERROR_PARSING_INT_ARG, e.getExitCode());
- }
+ final CommandLineParseException e = assertThrows(CommandLineParseException.class, () -> tlsToolkitStandaloneCommandLine.parse("-k", "badVal"));
+
+ assertEquals(ExitCode.ERROR_PARSING_INT_ARG, e.getExitCode());
}
@Test
- public void testKeySize() throws CommandLineParseException, IOException {
+ public void testKeySize() throws CommandLineParseException {
int testKeySize = 4096;
tlsToolkitStandaloneCommandLine.parse("-k", Integer.toString(testKeySize));
assertEquals(testKeySize, tlsToolkitStandaloneCommandLine.createConfig().getKeySize());
}
@Test
- public void testSigningAlgorithm() throws CommandLineParseException, IOException {
+ public void testSigningAlgorithm() throws CommandLineParseException {
String testSigningAlgorithm = "testSigningAlgorithm";
tlsToolkitStandaloneCommandLine.parse("-s", testSigningAlgorithm);
assertEquals(testSigningAlgorithm, tlsToolkitStandaloneCommandLine.createConfig().getSigningAlgorithm());
}
@Test
- public void testSAN() throws CommandLineParseException, IOException {
+ public void testSAN() throws CommandLineParseException {
String dnsSAN = "nifi.apache.org";
tlsToolkitStandaloneCommandLine.parse("--subjectAlternativeNames", dnsSAN);
assertEquals(dnsSAN, tlsToolkitStandaloneCommandLine.createConfig().getDomainAlternativeNames().get(0));
@@ -136,11 +122,9 @@ public class TlsToolkitStandaloneCommandLineTest {
@Test
public void testDaysNotInteger() {
- try {
- tlsToolkitStandaloneCommandLine.parse("-d", "badVal");
- } catch (CommandLineParseException e) {
- assertEquals(ExitCode.ERROR_PARSING_INT_ARG, e.getExitCode());
- }
+ final CommandLineParseException e = assertThrows(CommandLineParseException.class, () -> tlsToolkitStandaloneCommandLine.parse("-d", "badVal"));
+
+ assertEquals(ExitCode.ERROR_PARSING_INT_ARG, e.getExitCode());
}
@Test
@@ -191,12 +175,9 @@ public class TlsToolkitStandaloneCommandLineTest {
@Test
public void testBadNifiPropertiesFile() {
- try {
- tlsToolkitStandaloneCommandLine.parse("-f", "/this/file/should/not/exist.txt");
- fail("Expected error when unable to read file");
- } catch (CommandLineParseException e) {
- assertEquals(ExitCode.ERROR_READING_NIFI_PROPERTIES, e.getExitCode());
- }
+ final CommandLineParseException e = assertThrows(CommandLineParseException.class, () -> tlsToolkitStandaloneCommandLine.parse("-f", "/this/file/should/not/exist.txt"));
+
+ assertEquals(ExitCode.ERROR_READING_NIFI_PROPERTIES, e.getExitCode());
}
@Test
@@ -429,9 +410,9 @@ public class TlsToolkitStandaloneCommandLineTest {
assertEquals(16, other06.getNumber());
}
- @Test(expected = IllegalArgumentException.class)
- public void testBadGlobalOrder() throws CommandLineParseException {
- tlsToolkitStandaloneCommandLine.parse("-n", "notInGlobalOrder", "-G", "nifi[1-3]");
+ @Test
+ public void testBadGlobalOrder() {
+ assertThrows(IllegalArgumentException.class, () -> tlsToolkitStandaloneCommandLine.parse("-n", "notInGlobalOrder", "-G", "nifi[1-3]"));
}
@Test
@@ -468,21 +449,17 @@ public class TlsToolkitStandaloneCommandLineTest {
TlsToolkitStandalone toolkit = new TlsToolkitStandalone();
toolkit.splitKeystore(standaloneConfig);
- assertTrue(outputFolder.listFiles().length == 3);
+ assertEquals(3, Objects.requireNonNull(outputFolder.listFiles()).length);
// Validity checking of the output is done in TlsHelperTest
- for(File file : outputFolder.listFiles()) {
+ for (File file : Objects.requireNonNull(outputFolder.listFiles())) {
assertTrue(file.length() > 0);
}
}
- @Test(expected = CommandLineParseException.class)
- public void testSplitKeystoreMissingPasswords() throws Exception {
- tlsToolkitStandaloneCommandLine.parse("-splitKeystore", keystoreFile, "-o", outputFolder.getPath());
- StandaloneConfig standaloneConfig = tlsToolkitStandaloneCommandLine.createSplitKeystoreConfig();
-
- TlsToolkitStandalone toolkit = new TlsToolkitStandalone();
- toolkit.splitKeystore(standaloneConfig);
+ @Test
+ public void testSplitKeystoreMissingPasswords() {
+ assertThrows(CommandLineParseException.class, () -> tlsToolkitStandaloneCommandLine.parse("-splitKeystore", keystoreFile, "-o", outputFolder.getPath()));
}
@Test
@@ -494,44 +471,33 @@ public class TlsToolkitStandaloneCommandLineTest {
toolkit.splitKeystore(standaloneConfig);
}
- @Test(expected = UnrecoverableKeyException.class)
+ @Test
public void testSplitKeystoreWrongKeyPass() throws Exception {
tlsToolkitStandaloneCommandLine.parse("-splitKeystore", keystoreFile, "-S", keystorePass, "-K", wrongPass, "-o", outputFolder.getPath());
StandaloneConfig standaloneConfig = tlsToolkitStandaloneCommandLine.createSplitKeystoreConfig();
TlsToolkitStandalone toolkit = new TlsToolkitStandalone();
- toolkit.splitKeystore(standaloneConfig);
+
+ assertThrows(UnrecoverableKeyException.class, () -> toolkit.splitKeystore(standaloneConfig));
}
- @Test(expected = IOException.class)
+ @Test
public void testSplitKeystoreWrongKeystorePass() throws Exception {
tlsToolkitStandaloneCommandLine.parse("-splitKeystore", keystoreFile, "-S", wrongPass, "-K", keyPass, "-o", outputFolder.getPath());
StandaloneConfig standaloneConfig = tlsToolkitStandaloneCommandLine.createSplitKeystoreConfig();
TlsToolkitStandalone toolkit = new TlsToolkitStandalone();
- toolkit.splitKeystore(standaloneConfig);
- }
- @Rule
- public ExpectedException expectedEx = ExpectedException.none();
+ assertThrows(IOException.class, () -> toolkit.splitKeystore(standaloneConfig));
+ }
@Test
- public void testSplitKeystoreNoKeystore() throws Exception {
- expectedEx.expect(CommandLineParseException.class);
- expectedEx.expectMessage("Error parsing command line. (Missing argument for option: splitKeystore)");
-
- tlsToolkitStandaloneCommandLine.parse("-splitKeystore", "-S", keystorePass, "-K", keyPass, "-o", outputFolder.getPath());
- StandaloneConfig standaloneConfig = tlsToolkitStandaloneCommandLine.createSplitKeystoreConfig();
-
- TlsToolkitStandalone toolkit = new TlsToolkitStandalone();
- toolkit.splitKeystore(standaloneConfig);
+ public void testSplitKeystoreNoKeystore() {
+ assertThrows(CommandLineParseException.class, () -> tlsToolkitStandaloneCommandLine.parse("-splitKeystore", "-S", keystorePass, "-K", keyPass, "-o", outputFolder.getPath()));
}
@Test
public void testSplitKeystoreEmptyKeystore() throws Exception {
- expectedEx.expect(KeyStoreException.class);
- expectedEx.expectMessage("was empty. No cert/key pairs to output to file.");
-
tlsToolkitStandaloneCommandLine.parse(
"-splitKeystore", new File("src/test/resources/empty-keystore.jks").getPath(), "-S", keystorePass, "-K", keyPass, "-o", outputFolder.getPath());
StandaloneConfig standaloneConfig = tlsToolkitStandaloneCommandLine.createSplitKeystoreConfig();
@@ -540,7 +506,7 @@ public class TlsToolkitStandaloneCommandLineTest {
assertEquals(keyPass, standaloneConfig.getKeyPassword());
assertEquals(keystorePass, standaloneConfig.getKeyStorePassword());
TlsToolkitStandalone toolkit = new TlsToolkitStandalone();
- toolkit.splitKeystore(standaloneConfig);
- }
+ assertThrows(KeyStoreException.class, () -> toolkit.splitKeystore(standaloneConfig));
+ }
}
diff --git a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/standalone/TlsToolkitStandaloneTest.java b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/standalone/TlsToolkitStandaloneTest.java
index 8bdf18ce01..058c9220d9 100644
--- a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/standalone/TlsToolkitStandaloneTest.java
+++ b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/standalone/TlsToolkitStandaloneTest.java
@@ -32,9 +32,9 @@ import org.apache.nifi.toolkit.tls.util.TlsHelper;
import org.apache.nifi.toolkit.tls.util.TlsHelperTest;
import org.apache.nifi.util.NiFiProperties;
import org.bouncycastle.asn1.x509.GeneralName;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -45,13 +45,11 @@ import java.io.IOException;
import java.io.InputStream;
import java.security.KeyPair;
import java.security.KeyStore;
-import java.security.NoSuchAlgorithmException;
import java.security.PrivateKey;
import java.security.PublicKey;
import java.security.cert.Certificate;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;
-import java.security.spec.InvalidKeySpecException;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;
@@ -60,10 +58,10 @@ import java.util.UUID;
import java.util.stream.Collectors;
import java.util.stream.Stream;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotEquals;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotEquals;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
public class TlsToolkitStandaloneTest {
public static final String NIFI_FAKE_PROPERTY = "nifi.fake.property";
@@ -74,7 +72,7 @@ public class TlsToolkitStandaloneTest {
private File tempDir;
- @Before
+ @BeforeEach
public void setup() throws IOException {
tempDir = File.createTempFile("tls-test", UUID.randomUUID().toString());
if (!tempDir.delete()) {
@@ -87,7 +85,7 @@ public class TlsToolkitStandaloneTest {
systemExitCapturer = new SystemExitCapturer();
}
- @After
+ @AfterEach
public void teardown() throws IOException {
systemExitCapturer.close();
FileUtils.deleteDirectory(tempDir);
@@ -434,13 +432,13 @@ public class TlsToolkitStandaloneTest {
}
@Test
- public void testDynamicHostnameDynamicSansNonNumeric() throws Exception {
+ public void testDynamicHostnameDynamicSansNonNumeric() {
String nodeNames = "node[1-2].nifi.apache.org";
String saNames = "alternative[A-B].nifi.apache.org";
runAndAssertExitCode(ExitCode.ERROR_PARSING_INT_ARG, "-o", tempDir.getAbsolutePath(), "-n", nodeNames, "--subjectAlternativeName", saNames);
}
- private X509Certificate checkLoadCertPrivateKey(String algorithm) throws IOException, NoSuchAlgorithmException, InvalidKeySpecException, CertificateException {
+ private X509Certificate checkLoadCertPrivateKey(String algorithm) throws IOException, CertificateException {
KeyPair keyPair = TlsHelperTest.loadKeyPair(new File(tempDir, TlsToolkitStandalone.NIFI_KEY + ".key"));
assertEquals(algorithm, keyPair.getPrivate().getAlgorithm());
diff --git a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/status/TlsToolkitGetStatusCommandLineTest.java b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/status/TlsToolkitGetStatusCommandLineTest.java
index 65a3852ff4..483deddbae 100644
--- a/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/status/TlsToolkitGetStatusCommandLineTest.java
+++ b/nifi-toolkit/nifi-toolkit-tls/src/test/java/org/apache/nifi/toolkit/tls/status/TlsToolkitGetStatusCommandLineTest.java
@@ -19,14 +19,15 @@ package org.apache.nifi.toolkit.tls.status;
import org.apache.nifi.toolkit.tls.commandLine.CommandLineParseException;
import org.apache.nifi.toolkit.tls.commandLine.ExitCode;
import org.apache.nifi.toolkit.tls.configuration.GetStatusConfig;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import javax.net.ssl.SSLContext;
import java.net.URI;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertThrows;
public class TlsToolkitGetStatusCommandLineTest {
@@ -36,89 +37,72 @@ public class TlsToolkitGetStatusCommandLineTest {
private TlsToolkitGetStatusCommandLine commandLine;
- @Before
+ @BeforeEach
public void setup() {
commandLine = new TlsToolkitGetStatusCommandLine();
}
@Test
public void testHelp() {
- try {
- commandLine.parse("-h");
- fail("Expected usage and help exit");
- } catch (CommandLineParseException e) {
- Assert.assertEquals(ExitCode.HELP, e.getExitCode());
- }
+ final CommandLineParseException e = assertThrows(CommandLineParseException.class, () -> commandLine.parse("-h"));
+
+ assertEquals(ExitCode.HELP, e.getExitCode());
}
@Test
- public void testSuccess() {
- try {
- final String urlStr = "https://localhost:8443/test";
- commandLine.parse(
- "-u", urlStr,
- "-ts", TRUSTSTORE_PATH,
- "-tst", JKS_TYPE,
- "-tsp", TRUSTSTORE_PASSWORD);
-
- final GetStatusConfig config = commandLine.createConfig();
- Assert.assertNotNull(config);
-
- final URI url = config.getUrl();
- Assert.assertNotNull(url);
- Assert.assertEquals(urlStr, url.toString());
-
- final SSLContext sslContext = config.getSslContext();
- Assert.assertNotNull(sslContext);
- } catch (CommandLineParseException e) {
- fail("Expected success");
- }
+ public void testSuccess() throws CommandLineParseException {
+ final String urlStr = "https://localhost:8443/test";
+ commandLine.parse(
+ "-u", urlStr,
+ "-ts", TRUSTSTORE_PATH,
+ "-tst", JKS_TYPE,
+ "-tsp", TRUSTSTORE_PASSWORD);
+
+ final GetStatusConfig config = commandLine.createConfig();
+ assertNotNull(config);
+
+ final URI url = config.getUrl();
+ assertNotNull(url);
+ assertEquals(urlStr, url.toString());
+
+ final SSLContext sslContext = config.getSslContext();
+ assertNotNull(sslContext);
}
@Test
public void testMissingUrl() {
- try {
- commandLine.parse(
- "-ts", TRUSTSTORE_PATH,
- "-tst", JKS_TYPE,
- "-tsp", TRUSTSTORE_PASSWORD);
-
- fail("Expected invalid args");
- } catch (CommandLineParseException e) {
- Assert.assertEquals(ExitCode.INVALID_ARGS, e.getExitCode());
- }
+ final CommandLineParseException e = assertThrows(CommandLineParseException.class, () -> commandLine.parse(
+ "-ts", TRUSTSTORE_PATH,
+ "-tst", JKS_TYPE,
+ "-tsp", TRUSTSTORE_PASSWORD)
+ );
+
+ assertEquals(ExitCode.INVALID_ARGS, e.getExitCode());
}
@Test
public void testTruststoreDoesNotExist() {
- try {
- final String urlStr = "https://localhost:8443/test";
- commandLine.parse(
- "-u", urlStr,
- "-ts", "does/not/exist/truststore.jks",
- "-tst", JKS_TYPE,
- "-tsp", TRUSTSTORE_PASSWORD);
-
- fail("Expected invalid args");
- } catch (CommandLineParseException e) {
- Assert.assertEquals(ExitCode.INVALID_ARGS, e.getExitCode());
- }
+ final CommandLineParseException e = assertThrows(CommandLineParseException.class, () -> commandLine.parse(
+
+ "-u", "https://localhost:8443/test",
+ "-ts", "does/not/exist/truststore.jks",
+ "-tst", JKS_TYPE,
+ "-tsp", TRUSTSTORE_PASSWORD)
+ );
+
+ assertEquals(ExitCode.INVALID_ARGS, e.getExitCode());
}
@Test
public void testInvalidTruststoreType() {
- try {
- final String urlStr = "https://localhost:8443/test";
- commandLine.parse(
- "-u", urlStr,
- "-ts", TRUSTSTORE_PATH,
- "-tst", "INVALID",
- "-tsp", TRUSTSTORE_PASSWORD);
-
- fail("Expected invalid args");
- } catch (CommandLineParseException e) {
- Assert.assertEquals(ExitCode.INVALID_ARGS, e.getExitCode());
- }
- }
+ final CommandLineParseException e = assertThrows(CommandLineParseException.class, () -> commandLine.parse(
+
+ "-u", "https://localhost:8443/test",
+ "-ts", TRUSTSTORE_PATH,
+ "-tst", "INVALID",
+ "-tsp", TRUSTSTORE_PASSWORD)
+ );
+ assertEquals(ExitCode.INVALID_ARGS, e.getExitCode());
+ }
}