You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by tp...@apache.org on 2022/07/18 14:15:54 UTC
[nifi] branch main updated: NIFI-10019: SendTrapSNMP works without flowfile, upgraded to junit5
This is an automated email from the ASF dual-hosted git repository.
tpalfy 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 f8844440f5 NIFI-10019: SendTrapSNMP works without flowfile, upgraded to junit5
f8844440f5 is described below
commit f8844440f5dac78f8933cbb11b194a31321ee868
Author: Lehel <Le...@hotmail.com>
AuthorDate: Sat May 14 00:59:04 2022 +0200
NIFI-10019: SendTrapSNMP works without flowfile, upgraded to junit5
This closes #6046.
Signed-off-by: Tamas Palfy <tp...@apache.org>
---
.../apache/nifi/snmp/processors/SendTrapSNMP.java | 70 ++--
.../processors/properties/V1TrapProperties.java | 42 ++-
.../snmp/configuration/SNMPConfigurationTest.java | 8 +-
.../configuration/V1TrapConfigurationTest.java | 62 ++--
.../apache/nifi/snmp/dto/SNMPTreeResponseTest.java | 35 +-
.../nifi/snmp/factory/core/SNMPContextTest.java | 6 +-
.../snmp/factory/core/SNMPFactoryProviderTest.java | 6 +-
.../snmp/factory/core/V1V2cSNMPFactoryTest.java | 14 +-
.../nifi/snmp/factory/core/V3SNMPFactoryTest.java | 14 +-
.../snmp/factory/trap/V1TrapPDUFactoryTest.java | 8 +-
.../snmp/factory/trap/V2TrapPDUFactoryTest.java | 8 +-
.../configurations/SNMPConfigurationFactory.java | 2 +-
.../SNMPV1V2cConfigurationFactory.java | 2 +-
.../testrunners/SNMPV2cTestRunnerFactory.java | 8 +-
.../testrunners/SNMPV3TestRunnerFactory.java | 8 +-
.../nifi/snmp/operations/GetSNMPHandlerTest.java | 42 +--
.../apache/nifi/snmp/operations/SNMPRequestIT.java | 399 +++++++++++++--------
.../operations/SNMPTrapReceiverHandlerTest.java | 16 +-
.../nifi/snmp/operations/SNMPTrapReceiverTest.java | 22 +-
.../snmp/operations/SendTrapSNMPHandlerTest.java | 20 +-
.../nifi/snmp/operations/SetSNMPHandlerTest.java | 26 +-
.../snmp/processors/AbstractSNMPProcessorTest.java | 24 +-
.../org/apache/nifi/snmp/processors/GetSNMPIT.java | 150 ++++----
.../apache/nifi/snmp/processors/GetSNMPTest.java | 6 +-
.../org/apache/nifi/snmp/processors/SetSNMPIT.java | 75 ++--
.../apache/nifi/snmp/processors/TrapSNMPIT.java | 18 +-
.../org/apache/nifi/snmp/utils/SNMPUtilsTest.java | 4 +-
27 files changed, 603 insertions(+), 492 deletions(-)
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/main/java/org/apache/nifi/snmp/processors/SendTrapSNMP.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/main/java/org/apache/nifi/snmp/processors/SendTrapSNMP.java
index 04b06e62fc..7ba0caa6fd 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/main/java/org/apache/nifi/snmp/processors/SendTrapSNMP.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/main/java/org/apache/nifi/snmp/processors/SendTrapSNMP.java
@@ -41,8 +41,11 @@ import java.io.IOException;
import java.time.Instant;
import java.util.Arrays;
import java.util.Collections;
+import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
+import java.util.Map;
+import java.util.Optional;
import java.util.Set;
/**
@@ -70,7 +73,6 @@ public class SendTrapSNMP extends AbstractSNMPProcessor {
.displayName("SNMP Manager Port")
.description("The port where the SNMP Manager listens to the incoming traps.")
.required(true)
- .defaultValue("0")
.addValidator(StandardValidators.PORT_VALIDATOR)
.build();
@@ -119,33 +121,51 @@ public class SendTrapSNMP extends AbstractSNMPProcessor {
@Override
public void onTrigger(final ProcessContext context, final ProcessSession processSession) {
- final FlowFile flowFile = processSession.get();
- if (flowFile != null) {
- try {
- final int snmpVersion = SNMPUtils.getVersion(context.getProperty(BasicProperties.SNMP_VERSION).getValue());
- if (SnmpConstants.version1 == snmpVersion) {
- V1TrapConfiguration v1TrapConfiguration = V1TrapConfiguration.builder()
- .enterpriseOid(context.getProperty(V1TrapProperties.ENTERPRISE_OID).evaluateAttributeExpressions(flowFile).getValue())
- .agentAddress(context.getProperty(V1TrapProperties.AGENT_ADDRESS).evaluateAttributeExpressions(flowFile).getValue())
- .genericTrapType(context.getProperty(V1TrapProperties.GENERIC_TRAP_TYPE).evaluateAttributeExpressions(flowFile).getValue())
- .specificTrapType(context.getProperty(V1TrapProperties.SPECIFIC_TRAP_TYPE).evaluateAttributeExpressions(flowFile).getValue())
- .build();
- snmpHandler.sendTrap(flowFile.getAttributes(), v1TrapConfiguration);
- } else {
- V2TrapConfiguration v2TrapConfiguration = new V2TrapConfiguration(
- context.getProperty(V2TrapProperties.TRAP_OID_VALUE).evaluateAttributeExpressions(flowFile).getValue()
- );
- snmpHandler.sendTrap(flowFile.getAttributes(), v2TrapConfiguration);
+ final FlowFile flowFile = Optional.ofNullable(processSession.get()).orElseGet(processSession::create);
+ final Map<String, String> attributes = new HashMap<>(flowFile.getAttributes());
+
+ try {
+ final int snmpVersion = SNMPUtils.getVersion(context.getProperty(BasicProperties.SNMP_VERSION).getValue());
+ if (SnmpConstants.version1 == snmpVersion) {
+
+ final String enterpriseOid = context.getProperty(V1TrapProperties.ENTERPRISE_OID).evaluateAttributeExpressions(flowFile).getValue();
+ final String agentAddress = context.getProperty(V1TrapProperties.AGENT_ADDRESS).evaluateAttributeExpressions(flowFile).getValue();
+ String genericTrapType = context.getProperty(V1TrapProperties.GENERIC_TRAP_TYPE).getValue();
+
+ if (genericTrapType.equals(V1TrapProperties.WITH_FLOW_FILE_ATTRIBUTE.getValue())) {
+ genericTrapType = flowFile.getAttribute(V1TrapProperties.GENERIC_TRAP_TYPE_FF_ATTRIBUTE);
}
- processSession.transfer(flowFile, REL_SUCCESS);
- } catch (IOException e) {
- getLogger().error("Failed to send request to the agent. Check if the agent supports the used version.", e);
- processSession.transfer(processSession.penalize(flowFile), REL_FAILURE);
- } catch (IllegalArgumentException e) {
- getLogger().error("Invalid trap configuration.", e);
- processSession.transfer(processSession.penalize(flowFile), REL_FAILURE);
+
+ final String specificTrapType = context.getProperty(V1TrapProperties.SPECIFIC_TRAP_TYPE).evaluateAttributeExpressions(flowFile).getValue();
+ V1TrapConfiguration v1TrapConfiguration = V1TrapConfiguration.builder()
+ .enterpriseOid(enterpriseOid)
+ .agentAddress(agentAddress)
+ .genericTrapType(genericTrapType)
+ .specificTrapType(specificTrapType)
+ .build();
+ attributes.put("agentAddress", agentAddress);
+ attributes.put("enterpriseOid", enterpriseOid);
+ attributes.put("genericTrapType", genericTrapType);
+ attributes.put("specificTrapType", specificTrapType);
+ snmpHandler.sendTrap(attributes, v1TrapConfiguration);
+ } else {
+ final String trapOidValue = context.getProperty(V2TrapProperties.TRAP_OID_VALUE).evaluateAttributeExpressions(flowFile).getValue();
+ V2TrapConfiguration v2TrapConfiguration = new V2TrapConfiguration(trapOidValue);
+ attributes.put("trapOidValue", trapOidValue);
+ snmpHandler.sendTrap(attributes, v2TrapConfiguration);
}
+
+ processSession.putAllAttributes(flowFile, attributes);
+ processSession.transfer(flowFile, REL_SUCCESS);
+
+ } catch (IOException e) {
+ getLogger().error("Failed to send request to the agent. Check if the agent supports the used version.", e);
+ processSession.transfer(processSession.penalize(flowFile), REL_FAILURE);
+ } catch (IllegalArgumentException e) {
+ getLogger().error("Invalid trap configuration.", e);
+ processSession.transfer(processSession.penalize(flowFile), REL_FAILURE);
}
+
}
@Override
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/main/java/org/apache/nifi/snmp/processors/properties/V1TrapProperties.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/main/java/org/apache/nifi/snmp/processors/properties/V1TrapProperties.java
index bcdf122189..c6c7de6436 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/main/java/org/apache/nifi/snmp/processors/properties/V1TrapProperties.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/main/java/org/apache/nifi/snmp/processors/properties/V1TrapProperties.java
@@ -31,10 +31,40 @@ public class V1TrapProperties {
// Utility class, not needed to instantiate.
}
- private static final AllowableValue GENERIC_TRAP_TYPE_ENTERPRISE_SPECIFIC = new AllowableValue("6", "Enterprise Specific",
+ static final AllowableValue COLD_START = new AllowableValue("0", "Cold Start",
+ "A coldStart trap signifies that the sending protocol entity is reinitializing itself such that the agent's configuration or the protocol" +
+ " entity implementation may be altered");
+
+ static final AllowableValue WARM_START = new AllowableValue("1", "Warm Start",
+ "A warmStart trap signifies that the sending protocol entity is reinitializing itself such that neither the agent configuration nor the" +
+ " protocol entity implementation is altered.");
+
+ static final AllowableValue LINK_DOWN = new AllowableValue("2", "Link Down",
+ "A linkDown trap signifies that the sending protocol entity recognizes a failure in one of the communication links represented in the agent's" +
+ " configuration.");
+
+ static final AllowableValue LINK_UP = new AllowableValue("3", "Link Up",
+ "A linkUp trap signifies that the sending protocol entity recognizes that one of the communication links represented in the agent's configuration" +
+ " has come up.");
+
+ static final AllowableValue AUTHENTICATION_FAILURE = new AllowableValue("4", "Authentication Failure",
+ "An authenticationFailure trap signifies that the sending protocol entity is the addressee of a protocol message that is not properly authenticated." +
+ " While implementations of the SNMP must be capable of generating this trap, they must also be capable of suppressing the emission of such traps via" +
+ " an implementation- specific mechanism.");
+
+ static final AllowableValue EGP_NEIGHBORLOSS = new AllowableValue("5", "EGP Neighborloss",
+ "An egpNeighborLoss trap signifies that an EGP neighbor for whom the sending protocol entity was an EGP peer has been marked down and the peer relationship" +
+ " no longer obtains");
+
+ static final AllowableValue ENTERPRISE_SPECIFIC = new AllowableValue("6", "Enterprise Specific",
"An enterpriseSpecific trap signifies that a particular enterprise-specific trap has occurred which " +
"can be defined in the Specific Trap Type field.");
+ public static final String GENERIC_TRAP_TYPE_FF_ATTRIBUTE = "generic-trap-type";
+
+ public static final AllowableValue WITH_FLOW_FILE_ATTRIBUTE = new AllowableValue(GENERIC_TRAP_TYPE_FF_ATTRIBUTE, "With \"generic-trap-type\" FlowFile Attribute",
+ "Provide the Generic Trap Type with the \"generic-trap-type\" flowfile attribute.");
+
public static final PropertyDescriptor ENTERPRISE_OID = new PropertyDescriptor.Builder()
.name("snmp-trap-enterprise-oid")
.displayName("Enterprise OID")
@@ -50,7 +80,6 @@ public class V1TrapProperties {
.displayName("SNMP Trap Agent Address")
.description("The address where the SNMP Manager sends the trap.")
.required(true)
- .defaultValue("0")
.addValidator(StandardValidators.NON_EMPTY_VALIDATOR)
.dependsOn(SNMP_VERSION, SNMP_V1)
.expressionLanguageSupported(ExpressionLanguageScope.FLOWFILE_ATTRIBUTES)
@@ -60,10 +89,10 @@ public class V1TrapProperties {
.name("snmp-trap-generic-type")
.displayName("Generic Trap Type")
.description("Generic trap type is an integer in the range of 0 to 6. See processor usage for details.")
- .required(false)
- .addValidator(StandardValidators.createLongValidator(0, 6, true))
+ .required(true)
.dependsOn(SNMP_VERSION, SNMP_V1)
- .expressionLanguageSupported(ExpressionLanguageScope.FLOWFILE_ATTRIBUTES)
+ .allowableValues(COLD_START, WARM_START, LINK_DOWN, LINK_UP, AUTHENTICATION_FAILURE, EGP_NEIGHBORLOSS,
+ ENTERPRISE_SPECIFIC, WITH_FLOW_FILE_ATTRIBUTE)
.build();
public static final PropertyDescriptor SPECIFIC_TRAP_TYPE = new PropertyDescriptor.Builder()
@@ -72,9 +101,10 @@ public class V1TrapProperties {
.description("Specific trap type is a number that further specifies the nature of the event that generated " +
"the trap in the case of traps of generic type 6 (enterpriseSpecific). The interpretation of this " +
"code is vendor-specific.")
- .required(true)
+ .required(false)
.addValidator(StandardValidators.POSITIVE_INTEGER_VALIDATOR)
.dependsOn(SNMP_VERSION, SNMP_V1)
+ .dependsOn(GENERIC_TRAP_TYPE, ENTERPRISE_SPECIFIC)
.expressionLanguageSupported(ExpressionLanguageScope.FLOWFILE_ATTRIBUTES)
.build();
}
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/configuration/SNMPConfigurationTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/configuration/SNMPConfigurationTest.java
index 656ffa77e2..ef6a3ed0fd 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/configuration/SNMPConfigurationTest.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/configuration/SNMPConfigurationTest.java
@@ -17,7 +17,7 @@
package org.apache.nifi.snmp.configuration;
import org.apache.nifi.remote.io.socket.NetworkUtils;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import org.snmp4j.mp.SnmpConstants;
import static org.apache.nifi.snmp.helper.configurations.SNMPConfigurationFactory.COMMUNITY_STRING;
@@ -28,9 +28,9 @@ import static org.apache.nifi.snmp.helper.configurations.SNMPV3ConfigurationFact
import static org.apache.nifi.snmp.helper.configurations.SNMPV3ConfigurationFactory.PRIV_PROTOCOL;
import static org.apache.nifi.snmp.helper.configurations.SNMPV3ConfigurationFactory.SECURITY_LEVEL;
import static org.apache.nifi.snmp.helper.configurations.SNMPV3ConfigurationFactory.SECURITY_NAME;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
-public class SNMPConfigurationTest {
+class SNMPConfigurationTest {
private static final int MANAGER_PORT = NetworkUtils.getAvailableUdpPort();
private static final String TARGET_PORT = "55556";
@@ -39,7 +39,7 @@ public class SNMPConfigurationTest {
private static final int TIMEOUT_IN_MS = 3000;
@Test
- public void testMembersAreSetCorrectly() {
+ void testMembersAreSetCorrectly() {
final SNMPConfiguration snmpConfiguration = SNMPConfiguration.builder()
.setManagerPort(MANAGER_PORT)
.setTargetHost(LOCALHOST)
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/configuration/V1TrapConfigurationTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/configuration/V1TrapConfigurationTest.java
index c7d4e26577..4a77ed99ed 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/configuration/V1TrapConfigurationTest.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/configuration/V1TrapConfigurationTest.java
@@ -16,30 +16,23 @@
*/
package org.apache.nifi.snmp.configuration;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.ExpectedException;
+import org.junit.jupiter.api.Test;
-import static org.apache.nifi.snmp.configuration.V1TrapConfiguration.AGENT_ADDRESS_MUST_BE_SPECIFIED;
-import static org.apache.nifi.snmp.configuration.V1TrapConfiguration.ENTERPRISE_OID_MUST_BE_SPECIFIED;
import static org.apache.nifi.snmp.configuration.V1TrapConfiguration.GENERIC_TRAP_TYPE_IS_6_ENTERPRISE_SPECIFIC_BUT_SPECIFIC_TRAP_TYPE_IS_NOT_PROVIDED;
import static org.apache.nifi.snmp.configuration.V1TrapConfiguration.GENERIC_TRAP_TYPE_MUST_BE_BETWEEN_0_AND_6;
import static org.apache.nifi.snmp.configuration.V1TrapConfiguration.SPECIFIC_TRAP_TYPE_MUST_BE_BETWEEN_0_AND_2147483647;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
-public class V1TrapConfigurationTest {
+class V1TrapConfigurationTest {
private static final String AGENT_ADDRESS = "127.0.0.1";
private static final String ENTERPRISE_OID = "1.3.6.1.4.1.8072.2.3.0.1";
private static final int GENERIC_TRAP_TYPE = 6;
private static final Integer SPECIFIC_TRAP_TYPE = 2;
- @Rule
- public ExpectedException exceptionRule = ExpectedException.none();
-
@Test
- public void testMembersAreSetCorrectly() {
+ void testMembersAreSetCorrectly() {
final V1TrapConfiguration v1TrapConfiguration = V1TrapConfiguration.builder()
.enterpriseOid(ENTERPRISE_OID)
.agentAddress(AGENT_ADDRESS)
@@ -54,29 +47,32 @@ public class V1TrapConfigurationTest {
}
@Test
- public void testRequireNonNullEnterpriseOid() {
- exceptionRule.expect(IllegalArgumentException.class);
- exceptionRule.expectMessage(ENTERPRISE_OID_MUST_BE_SPECIFIED);
- V1TrapConfiguration.builder()
- .agentAddress(AGENT_ADDRESS)
- .genericTrapType(String.valueOf(GENERIC_TRAP_TYPE))
- .specificTrapType(String.valueOf(SPECIFIC_TRAP_TYPE))
- .build();
+ void testRequireNonNullEnterpriseOid() {
+ final IllegalArgumentException exception = assertThrows(IllegalArgumentException.class, () ->
+ V1TrapConfiguration.builder()
+ .agentAddress(AGENT_ADDRESS)
+ .genericTrapType(String.valueOf(GENERIC_TRAP_TYPE))
+ .specificTrapType(String.valueOf(SPECIFIC_TRAP_TYPE))
+ .build()
+ );
+ assertEquals("Enterprise OID must be specified.", exception.getMessage());
}
@Test
- public void testRequireNonNullAgentAddress() {
- exceptionRule.expect(IllegalArgumentException.class);
- exceptionRule.expectMessage(AGENT_ADDRESS_MUST_BE_SPECIFIED);
- V1TrapConfiguration.builder()
- .enterpriseOid(ENTERPRISE_OID)
- .genericTrapType(String.valueOf(GENERIC_TRAP_TYPE))
- .specificTrapType(String.valueOf(SPECIFIC_TRAP_TYPE))
- .build();
+ void testRequireNonNullAgentAddress() {
+ final IllegalArgumentException exception = assertThrows(IllegalArgumentException.class, () ->
+ V1TrapConfiguration.builder()
+ .enterpriseOid(ENTERPRISE_OID)
+ .genericTrapType(String.valueOf(GENERIC_TRAP_TYPE))
+ .specificTrapType(String.valueOf(SPECIFIC_TRAP_TYPE))
+ .build()
+ );
+
+ assertEquals("Agent address must be specified.", exception.getMessage());
}
@Test
- public void testGenericTypeIsNegative() {
+ void testGenericTypeIsNegative() {
final IllegalArgumentException exception = assertThrows(IllegalArgumentException.class, () -> V1TrapConfiguration.builder()
.agentAddress(AGENT_ADDRESS)
.enterpriseOid(ENTERPRISE_OID)
@@ -87,7 +83,7 @@ public class V1TrapConfigurationTest {
}
@Test
- public void testGenericTypeIsGreaterThan6() {
+ void testGenericTypeIsGreaterThan6() {
final IllegalArgumentException exception = assertThrows(IllegalArgumentException.class, () -> V1TrapConfiguration.builder()
.agentAddress(AGENT_ADDRESS)
.enterpriseOid(ENTERPRISE_OID)
@@ -98,7 +94,7 @@ public class V1TrapConfigurationTest {
}
@Test
- public void testGenericTypeIsNotANumber() {
+ void testGenericTypeIsNotANumber() {
final IllegalArgumentException exception = assertThrows(IllegalArgumentException.class, () -> V1TrapConfiguration.builder()
.agentAddress(AGENT_ADDRESS)
.enterpriseOid(ENTERPRISE_OID)
@@ -109,7 +105,7 @@ public class V1TrapConfigurationTest {
}
@Test
- public void testSpecificTrapTypeIsNegative() {
+ void testSpecificTrapTypeIsNegative() {
final IllegalArgumentException exception = assertThrows(IllegalArgumentException.class, () -> V1TrapConfiguration.builder()
.agentAddress(AGENT_ADDRESS)
.enterpriseOid(ENTERPRISE_OID)
@@ -121,7 +117,7 @@ public class V1TrapConfigurationTest {
}
@Test
- public void testGenericTrapTypeIsEnterpriseSpecificButSpecificTrapTypeIsNotSet() {
+ void testGenericTrapTypeIsEnterpriseSpecificButSpecificTrapTypeIsNotSet() {
final IllegalArgumentException exception = assertThrows(IllegalArgumentException.class, () -> V1TrapConfiguration.builder()
.agentAddress(AGENT_ADDRESS)
.enterpriseOid(ENTERPRISE_OID)
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/dto/SNMPTreeResponseTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/dto/SNMPTreeResponseTest.java
index 1a325bf5c1..dc28fe0789 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/dto/SNMPTreeResponseTest.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/dto/SNMPTreeResponseTest.java
@@ -16,10 +16,8 @@
*/
package org.apache.nifi.snmp.dto;
-import org.apache.nifi.util.LogMessage;
-import org.apache.nifi.util.MockComponentLog;
-import org.junit.BeforeClass;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Test;
import org.mockito.Mock;
import org.snmp4j.CommunityTarget;
import org.snmp4j.Target;
@@ -35,7 +33,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
-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;
@@ -61,7 +59,7 @@ public class SNMPTreeResponseTest {
@Mock
private static Target target;
- @BeforeClass
+ @BeforeAll
public static void setUp() {
vbMap = new HashMap<>();
vbMap.put(SNMP_PREFIX + OID_1 + SNMP_SEPARATOR + VB_SYNTAX, OID_1_VALUE);
@@ -83,7 +81,7 @@ public class SNMPTreeResponseTest {
}
@Test
- public void testGetAttributes() {
+ void testGetAttributes() {
final TreeEvent treeEvent1 = mock(TreeEvent.class);
when(treeEvent1.getVariableBindings()).thenReturn(vbs1);
final TreeEvent treeEvent2 = mock(TreeEvent.class);
@@ -102,7 +100,7 @@ public class SNMPTreeResponseTest {
}
@Test
- public void testGetAttributesFlattensEmptyVariableBindingArrays() {
+ void testGetAttributesFlattensEmptyVariableBindingArrays() {
final TreeEvent emptyTreeEvent = mock(TreeEvent.class);
when(emptyTreeEvent.getVariableBindings()).thenReturn(new VariableBinding[0]);
final TreeEvent normalTreeEvent = mock(TreeEvent.class);
@@ -119,7 +117,7 @@ public class SNMPTreeResponseTest {
}
@Test
- public void testGetAttributesFiltersNullVariableBindings() {
+ void testGetAttributesFiltersNullVariableBindings() {
final TreeEvent nullTreeEvent = mock(TreeEvent.class);
when(nullTreeEvent.getVariableBindings()).thenReturn(null);
final TreeEvent normalTreeEvent = mock(TreeEvent.class);
@@ -136,7 +134,7 @@ public class SNMPTreeResponseTest {
}
@Test
- public void testGetTargetAddress() {
+ void testGetTargetAddress() {
final TreeEvent treeEvent = mock(TreeEvent.class);
final List<TreeEvent> treeEvents = new ArrayList<>();
treeEvents.add(treeEvent);
@@ -145,21 +143,4 @@ public class SNMPTreeResponseTest {
assertEquals(TARGET_ADDRESS, actualTargetAddress);
}
-
- @Test
- public void testLogErrors() {
- final MockComponentLog logger = new MockComponentLog("id1", new Object());
-
-
- final List<TreeEvent> treeEvents = new ArrayList<>();
- final TreeEvent treeEvent = mock(TreeEvent.class);
- when(treeEvent.isError()).thenReturn(true);
- when(treeEvent.getErrorMessage()).thenReturn("ERROR MESSAGE");
- treeEvents.add(treeEvent);
- final SNMPTreeResponse snmpTreeResponse = new SNMPTreeResponse(target, treeEvents);
- snmpTreeResponse.logErrors(logger);
-
- final List<LogMessage> errorMessages = logger.getErrorMessages();
- System.out.println("asd");
- }
}
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/core/SNMPContextTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/core/SNMPContextTest.java
index 0d073aca63..ed0b4bdb33 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/core/SNMPContextTest.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/core/SNMPContextTest.java
@@ -17,7 +17,7 @@
package org.apache.nifi.snmp.factory.core;
import org.apache.nifi.snmp.configuration.SNMPConfiguration;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import org.snmp4j.Snmp;
import org.snmp4j.Target;
@@ -26,10 +26,10 @@ import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-public class SNMPContextTest {
+class SNMPContextTest {
@Test
- public void testCreateSNMPContext() {
+ void testCreateSNMPContext() {
final SNMPContext snmpContext = spy(SNMPContext.class);
final Snmp mockSnmpManager = mock(Snmp.class);
final Target mockTarget = mock(Target.class);
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/core/SNMPFactoryProviderTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/core/SNMPFactoryProviderTest.java
index eaf23efe89..2d3da8b9aa 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/core/SNMPFactoryProviderTest.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/core/SNMPFactoryProviderTest.java
@@ -16,16 +16,16 @@
*/
package org.apache.nifi.snmp.factory.core;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import org.snmp4j.mp.SnmpConstants;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.core.IsInstanceOf.instanceOf;
-public class SNMPFactoryProviderTest {
+class SNMPFactoryProviderTest {
@Test
- public void testCreateFactoryByVersion() {
+ void testCreateFactoryByVersion() {
final SNMPContext snmpV1V2cFactoryFromVersion1 = SNMPFactoryProvider.getFactory(SnmpConstants.version1);
final SNMPContext snmpV1V2cFactoryFromVersion2c = SNMPFactoryProvider.getFactory(SnmpConstants.version2c);
final SNMPContext snmpV3Factory = SNMPFactoryProvider.getFactory(SnmpConstants.version3);
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/core/V1V2cSNMPFactoryTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/core/V1V2cSNMPFactoryTest.java
index 80ef139582..666c934b1e 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/core/V1V2cSNMPFactoryTest.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/core/V1V2cSNMPFactoryTest.java
@@ -19,7 +19,7 @@ package org.apache.nifi.snmp.factory.core;
import org.apache.nifi.remote.io.socket.NetworkUtils;
import org.apache.nifi.snmp.configuration.SNMPConfiguration;
import org.apache.nifi.util.StringUtils;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import org.snmp4j.CommunityTarget;
import org.snmp4j.Snmp;
import org.snmp4j.Target;
@@ -30,17 +30,17 @@ import java.util.regex.Pattern;
import static org.apache.nifi.snmp.helper.configurations.SNMPConfigurationFactory.LOCALHOST;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.core.IsInstanceOf.instanceOf;
-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;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
-public class V1V2cSNMPFactoryTest {
+class V1V2cSNMPFactoryTest {
private static final int RETRIES = 3;
@Test
- public void testFactoryCreatesV1V2Configuration() {
+ void testFactoryCreatesV1V2Configuration() {
final V1V2cSNMPFactory snmpFactory = new V1V2cSNMPFactory();
final int managerPort = NetworkUtils.getAvailableUdpPort();
final String targetPort = String.valueOf(NetworkUtils.getAvailableUdpPort());
@@ -56,7 +56,7 @@ public class V1V2cSNMPFactoryTest {
}
@Test
- public void testFactoryCreatesSnmpManager() {
+ void testFactoryCreatesSnmpManager() {
final V1V2cSNMPFactory snmpFactory = new V1V2cSNMPFactory();
final int managerPort = NetworkUtils.getAvailableUdpPort();
final String targetPort = String.valueOf(NetworkUtils.getAvailableUdpPort());
@@ -69,7 +69,7 @@ public class V1V2cSNMPFactoryTest {
}
@Test
- public void testFactoryCreatesResourceHandler() {
+ void testFactoryCreatesResourceHandler() {
final V1V2cSNMPFactory snmpFactory = spy(V1V2cSNMPFactory.class);
final int managerPort = NetworkUtils.getAvailableUdpPort();
final String targetPort = String.valueOf(NetworkUtils.getAvailableUdpPort());
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/core/V3SNMPFactoryTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/core/V3SNMPFactoryTest.java
index 88cafe3fb5..940f0a722e 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/core/V3SNMPFactoryTest.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/core/V3SNMPFactoryTest.java
@@ -18,7 +18,7 @@ package org.apache.nifi.snmp.factory.core;
import org.apache.nifi.remote.io.socket.NetworkUtils;
import org.apache.nifi.snmp.configuration.SNMPConfiguration;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import org.snmp4j.Snmp;
import org.snmp4j.Target;
import org.snmp4j.UserTarget;
@@ -38,18 +38,18 @@ import static org.apache.nifi.snmp.helper.configurations.SNMPV3ConfigurationFact
import static org.apache.nifi.snmp.helper.configurations.SNMPV3ConfigurationFactory.SECURITY_NAME;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.core.IsInstanceOf.instanceOf;
-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;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
-public class V3SNMPFactoryTest {
+class V3SNMPFactoryTest {
private static final int RETRIES = 3;
private static final int EXPECTED_SECURITY_LEVEL = 3;
@Test
- public void testFactoryCreatesTarget() {
+ void testFactoryCreatesTarget() {
final V3SNMPFactory snmpFactory = new V3SNMPFactory();
final int managerPort = NetworkUtils.getAvailableUdpPort();
final String targetPort = String.valueOf(NetworkUtils.getAvailableUdpPort());
@@ -65,7 +65,7 @@ public class V3SNMPFactoryTest {
}
@Test
- public void testFactoryCreatesSnmpManager() {
+ void testFactoryCreatesSnmpManager() {
final V3SNMPFactory snmpFactory = new V3SNMPFactory();
final int managerPort = NetworkUtils.getAvailableUdpPort();
final String targetPort = String.valueOf(NetworkUtils.getAvailableUdpPort());
@@ -80,7 +80,7 @@ public class V3SNMPFactoryTest {
}
@Test
- public void testFactoryCreatesResourceHandler() {
+ void testFactoryCreatesResourceHandler() {
final V3SNMPFactory snmpFactory = spy(V3SNMPFactory.class);
final int managerPort = NetworkUtils.getAvailableUdpPort();
final String targetPort = String.valueOf(NetworkUtils.getAvailableUdpPort());
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/trap/V1TrapPDUFactoryTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/trap/V1TrapPDUFactoryTest.java
index 3cd699d76d..8af625af93 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/trap/V1TrapPDUFactoryTest.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/trap/V1TrapPDUFactoryTest.java
@@ -17,17 +17,17 @@
package org.apache.nifi.snmp.factory.trap;
import org.apache.nifi.snmp.configuration.V1TrapConfiguration;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import org.snmp4j.PDU;
import org.snmp4j.PDUv1;
import org.snmp4j.Target;
import java.time.Instant;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.Mockito.mock;
-public class V1TrapPDUFactoryTest {
+class V1TrapPDUFactoryTest {
private static final String AGENT_ADDRESS = "127.0.0.1";
private static final String ENTERPRISE_OID = "1.3.6.1.4.1.8072.2.3.0.1";
@@ -35,7 +35,7 @@ public class V1TrapPDUFactoryTest {
private static final int SPECIFIC_TRAP_TYPE = 2;
@Test
- public void testCreateV1TrapPdu() {
+ void testCreateV1TrapPdu() {
final Target mockTarget = mock(Target.class);
final V1TrapConfiguration v1TrapConfiguration = V1TrapConfiguration.builder()
.enterpriseOid(ENTERPRISE_OID)
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/trap/V2TrapPDUFactoryTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/trap/V2TrapPDUFactoryTest.java
index 64b81e9dd8..7da2976660 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/trap/V2TrapPDUFactoryTest.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/factory/trap/V2TrapPDUFactoryTest.java
@@ -17,7 +17,7 @@
package org.apache.nifi.snmp.factory.trap;
import org.apache.nifi.snmp.configuration.V2TrapConfiguration;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import org.snmp4j.PDU;
import org.snmp4j.Target;
import org.snmp4j.mp.SnmpConstants;
@@ -31,15 +31,15 @@ import java.util.Vector;
import java.util.stream.Collectors;
import java.util.stream.Stream;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.mock;
-public class V2TrapPDUFactoryTest {
+class V2TrapPDUFactoryTest {
private static final String TRAP_OID = "1.3.6.1.4.1.8072.2.3.0.1";
@Test
- public void testCreateV2TrapPdu() {
+ void testCreateV2TrapPdu() {
final Target mockTarget = mock(Target.class);
final V2TrapConfiguration v2TrapConfiguration = new V2TrapConfiguration(TRAP_OID);
final V2TrapPDUFactory v2TrapPduFactory = new V2TrapPDUFactory(mockTarget, Instant.now());
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/configurations/SNMPConfigurationFactory.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/configurations/SNMPConfigurationFactory.java
index e6c7451437..9c98e9b0af 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/configurations/SNMPConfigurationFactory.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/configurations/SNMPConfigurationFactory.java
@@ -23,7 +23,7 @@ public interface SNMPConfigurationFactory {
String LOCALHOST = "127.0.0.1";
String COMMUNITY_STRING = "public";
- SNMPConfiguration createSnmpGetSetConfiguration(int agentPort);
+ SNMPConfiguration createSnmpGetSetConfiguration(final int agentPort);
SNMPConfiguration createSnmpGetSetConfigWithCustomHost(final String host, final int agentPort);
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/configurations/SNMPV1V2cConfigurationFactory.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/configurations/SNMPV1V2cConfigurationFactory.java
index d7253950aa..be15904042 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/configurations/SNMPV1V2cConfigurationFactory.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/configurations/SNMPV1V2cConfigurationFactory.java
@@ -20,7 +20,7 @@ import org.apache.nifi.snmp.configuration.SNMPConfiguration;
public class SNMPV1V2cConfigurationFactory implements SNMPConfigurationFactory {
- private int snmpVersion;
+ private final int snmpVersion;
public SNMPV1V2cConfigurationFactory(int snmpVersion) {
this.snmpVersion = snmpVersion;
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/testrunners/SNMPV2cTestRunnerFactory.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/testrunners/SNMPV2cTestRunnerFactory.java
index 63fc49e6b2..a929277dfa 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/testrunners/SNMPV2cTestRunnerFactory.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/testrunners/SNMPV2cTestRunnerFactory.java
@@ -37,7 +37,7 @@ public class SNMPV2cTestRunnerFactory implements SNMPTestRunnerFactory {
private static final SNMPConfigurationFactory snmpV2cConfigurationFactory = new SNMPV1V2cConfigurationFactory(SnmpConstants.version2c);
@Override
- public TestRunner createSnmpGetTestRunner(int agentPort, String oid, String strategy) {
+ public TestRunner createSnmpGetTestRunner(final int agentPort, final String oid, final String strategy) {
final TestRunner runner = TestRunners.newTestRunner(GetSNMP.class);
final SNMPConfiguration snmpConfiguration = snmpV2cConfigurationFactory.createSnmpGetSetConfiguration(agentPort);
runner.setProperty(GetSNMP.OID, oid);
@@ -50,7 +50,7 @@ public class SNMPV2cTestRunnerFactory implements SNMPTestRunnerFactory {
}
@Override
- public TestRunner createSnmpSetTestRunner(int agentPort, String oid, String oidValue) {
+ public TestRunner createSnmpSetTestRunner(int agentPort, final String oid, final String oidValue) {
final TestRunner runner = TestRunners.newTestRunner(SetSNMP.class);
final SNMPConfiguration snmpConfiguration = snmpV2cConfigurationFactory.createSnmpGetSetConfiguration(agentPort);
runner.setProperty(SetSNMP.AGENT_HOST, snmpConfiguration.getTargetHost());
@@ -63,7 +63,7 @@ public class SNMPV2cTestRunnerFactory implements SNMPTestRunnerFactory {
}
@Override
- public TestRunner createSnmpSendTrapTestRunner(int managerPort, final String oid, final String oidValue) {
+ public TestRunner createSnmpSendTrapTestRunner(final int managerPort, final String oid, final String oidValue) {
final TestRunner runner = TestRunners.newTestRunner(SendTrapSNMP.class);
final SNMPConfiguration snmpConfiguration = snmpV2cConfigurationFactory.createSnmpGetSetConfiguration(managerPort);
final V2TrapConfiguration trapConfiguration = TrapConfigurationFactory.getV2TrapConfiguration();
@@ -78,7 +78,7 @@ public class SNMPV2cTestRunnerFactory implements SNMPTestRunnerFactory {
}
@Override
- public TestRunner createSnmpListenTrapTestRunner(int managerPort) {
+ public TestRunner createSnmpListenTrapTestRunner(final int managerPort) {
final TestRunner runner = TestRunners.newTestRunner(ListenTrapSNMP.class);
final SNMPConfiguration snmpConfiguration = snmpV2cConfigurationFactory.createSnmpListenTrapConfig(managerPort);
runner.setProperty(ListenTrapSNMP.SNMP_MANAGER_PORT, String.valueOf(snmpConfiguration.getManagerPort()));
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/testrunners/SNMPV3TestRunnerFactory.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/testrunners/SNMPV3TestRunnerFactory.java
index 4dfdd39252..959c6d2b01 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/testrunners/SNMPV3TestRunnerFactory.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/testrunners/SNMPV3TestRunnerFactory.java
@@ -38,7 +38,7 @@ public class SNMPV3TestRunnerFactory implements SNMPTestRunnerFactory {
private static final SNMPConfigurationFactory snmpV3ConfigurationFactory = new SNMPV3ConfigurationFactory();
@Override
- public TestRunner createSnmpGetTestRunner(int agentPort, String oid, String strategy) {
+ public TestRunner createSnmpGetTestRunner(final int agentPort, final String oid, final String strategy) {
final TestRunner runner = TestRunners.newTestRunner(GetSNMP.class);
final SNMPConfiguration snmpConfiguration = snmpV3ConfigurationFactory.createSnmpGetSetConfiguration(agentPort);
runner.setProperty(GetSNMP.OID, oid);
@@ -57,7 +57,7 @@ public class SNMPV3TestRunnerFactory implements SNMPTestRunnerFactory {
}
@Override
- public TestRunner createSnmpSetTestRunner(int agentPort, String oid, String oidValue) {
+ public TestRunner createSnmpSetTestRunner(final int agentPort, final String oid, final String oidValue) {
final TestRunner runner = TestRunners.newTestRunner(SetSNMP.class);
final SNMPConfiguration snmpConfiguration = snmpV3ConfigurationFactory.createSnmpGetSetConfiguration(agentPort);
runner.setProperty(SetSNMP.AGENT_HOST, snmpConfiguration.getTargetHost());
@@ -76,7 +76,7 @@ public class SNMPV3TestRunnerFactory implements SNMPTestRunnerFactory {
}
@Override
- public TestRunner createSnmpSendTrapTestRunner(int managerPort, final String oid, final String oidValue) {
+ public TestRunner createSnmpSendTrapTestRunner(final int managerPort, final String oid, final String oidValue) {
final TestRunner runner = TestRunners.newTestRunner(SendTrapSNMP.class);
final SNMPConfiguration snmpConfiguration = snmpV3ConfigurationFactory.createSnmpGetSetConfiguration(managerPort);
final V2TrapConfiguration trapConfiguration = TrapConfigurationFactory.getV2TrapConfiguration();
@@ -100,7 +100,7 @@ public class SNMPV3TestRunnerFactory implements SNMPTestRunnerFactory {
}
@Override
- public TestRunner createSnmpListenTrapTestRunner(int managerPort) {
+ public TestRunner createSnmpListenTrapTestRunner(final int managerPort) {
final TestRunner runner = TestRunners.newTestRunner(ListenTrapSNMP.class);
final SNMPConfiguration snmpConfiguration = snmpV3ConfigurationFactory.createSnmpListenTrapConfig(managerPort);
runner.setProperty(ListenTrapSNMP.SNMP_MANAGER_PORT, String.valueOf(snmpConfiguration.getManagerPort()));
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/GetSNMPHandlerTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/GetSNMPHandlerTest.java
index 8c98ec100b..8fab72fd5a 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/GetSNMPHandlerTest.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/GetSNMPHandlerTest.java
@@ -20,9 +20,8 @@ import org.apache.nifi.snmp.dto.SNMPSingleResponse;
import org.apache.nifi.snmp.dto.SNMPTreeResponse;
import org.apache.nifi.snmp.exception.RequestTimeoutException;
import org.apache.nifi.snmp.exception.SNMPWalkException;
-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 org.mockito.ArgumentCaptor;
import org.mockito.Mockito;
import org.snmp4j.PDU;
@@ -44,13 +43,14 @@ import java.util.Optional;
import static org.apache.nifi.snmp.operations.GetSNMPHandler.EMPTY_SUBTREE_EXCEPTION_MESSAGE;
import static org.apache.nifi.snmp.operations.GetSNMPHandler.LEAF_ELEMENT_EXCEPTION_MESSAGE;
import static org.apache.nifi.snmp.operations.GetSNMPHandler.SNMP_ERROR_EXCEPTION_MESSAGE;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
-public class GetSNMPHandlerTest {
+class GetSNMPHandlerTest {
private static final String OID = "1.3.6.1.4.1.343";
@@ -58,7 +58,7 @@ public class GetSNMPHandlerTest {
private Snmp mockSnmpManager;
private SNMPResourceHandler snmpResourceHandler;
- @Before
+ @BeforeEach
public void init() {
mockTarget = mock(Target.class);
mockSnmpManager = mock(Snmp.class);
@@ -66,7 +66,7 @@ public class GetSNMPHandlerTest {
}
@Test
- public void testGetSnmpWithEmptyFlowFile() throws IOException {
+ void testGetSnmpWithEmptyFlowFile() throws IOException {
final ResponseEvent mockResponseEvent = mock(ResponseEvent.class);
final PDU mockPdu = mock(PDU.class);
when(mockResponseEvent.getResponse()).thenReturn(mockPdu);
@@ -84,7 +84,7 @@ public class GetSNMPHandlerTest {
}
@Test
- public void testGetSnmpWithInvalidFlowFile() throws IOException {
+ void testGetSnmpWithInvalidFlowFile() throws IOException {
final Map<String, String> invalidFlowFileAttributes = new HashMap<>();
invalidFlowFileAttributes.put("invalid", "flowfile attribute");
@@ -100,7 +100,7 @@ public class GetSNMPHandlerTest {
}
@Test
- public void testGetSnmpWithValidFlowFile() throws IOException {
+ void testGetSnmpWithValidFlowFile() throws IOException {
final String flowFileOid = "1.3.6.1.2.1.1.1.0";
final Map<String, String> flowFileAttributes = new HashMap<>();
flowFileAttributes.put("snmp$" + flowFileOid, "OID value");
@@ -123,14 +123,14 @@ public class GetSNMPHandlerTest {
}
@Test
- public void testGetSnmpWhenTimeout() throws IOException {
+ void testGetSnmpWhenTimeout() throws IOException {
final ResponseEvent mockResponseEvent = mock(ResponseEvent.class);
when(mockResponseEvent.getResponse()).thenReturn(null);
when(mockSnmpManager.get(any(PDU.class), any(Target.class))).thenReturn(mockResponseEvent);
final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
- final RequestTimeoutException requestTimeoutException = Assert.assertThrows(
+ final RequestTimeoutException requestTimeoutException = assertThrows(
RequestTimeoutException.class,
() -> getSNMPHandler.get(OID)
);
@@ -141,7 +141,7 @@ public class GetSNMPHandlerTest {
@SuppressWarnings("unchecked")
@Test
- public void testWalkSnmpWithEmptyFlowFile() {
+ void testWalkSnmpWithEmptyFlowFile() {
final TreeUtils mockTreeUtils = mock(TreeUtils.class);
final TreeEvent mockTreeEvent = mock(TreeEvent.class);
final List<TreeEvent> mockSubtree = (List<TreeEvent>) mock(List.class);
@@ -163,7 +163,7 @@ public class GetSNMPHandlerTest {
}
@Test
- public void testWalkSnmpWithInvalidFlowFile() {
+ void testWalkSnmpWithInvalidFlowFile() {
final Map<String, String> invalidFlowFileAttributes = new HashMap<>();
invalidFlowFileAttributes.put("invalid", "flowfile attribute");
@@ -175,7 +175,7 @@ public class GetSNMPHandlerTest {
@SuppressWarnings("unchecked")
@Test
- public void testWalkSnmpWithValidFlowFile() {
+ void testWalkSnmpWithValidFlowFile() {
final String flowFileOid = "1.3.6.1.2.1.1.1.0";
final Map<String, String> flowFileAttributes = new HashMap<>();
flowFileAttributes.put("snmp$" + flowFileOid, "OID value");
@@ -203,7 +203,7 @@ public class GetSNMPHandlerTest {
@SuppressWarnings("unchecked")
@Test
- public void testWalkSnmpWithEmptySubtreeThrowsException() {
+ void testWalkSnmpWithEmptySubtreeThrowsException() {
final TreeUtils mockTreeUtils = mock(TreeUtils.class);
final List<TreeEvent> mockSubtree = (List<TreeEvent>) mock(List.class);
@@ -213,7 +213,7 @@ public class GetSNMPHandlerTest {
final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
getSNMPHandler.setTreeUtils(mockTreeUtils);
- final SNMPWalkException snmpWalkException = Assert.assertThrows(
+ final SNMPWalkException snmpWalkException = assertThrows(
SNMPWalkException.class,
() -> getSNMPHandler.walk(OID)
);
@@ -223,7 +223,7 @@ public class GetSNMPHandlerTest {
@SuppressWarnings("unchecked")
@Test
- public void testWalkSnmpWithSubtreeErrorThrowsException() {
+ void testWalkSnmpWithSubtreeErrorThrowsException() {
final TreeUtils mockTreeUtils = mock(TreeUtils.class);
final TreeEvent mockTreeEvent = mock(TreeEvent.class);
final List<TreeEvent> mockSubtree = (List<TreeEvent>) mock(List.class);
@@ -236,7 +236,7 @@ public class GetSNMPHandlerTest {
final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
getSNMPHandler.setTreeUtils(mockTreeUtils);
- final SNMPWalkException snmpWalkException = Assert.assertThrows(
+ final SNMPWalkException snmpWalkException = assertThrows(
SNMPWalkException.class,
() -> getSNMPHandler.walk(OID)
);
@@ -246,7 +246,7 @@ public class GetSNMPHandlerTest {
@SuppressWarnings("unchecked")
@Test
- public void testWalkSnmpWithLeafElementSubtreeThrowsException() {
+ void testWalkSnmpWithLeafElementSubtreeThrowsException() {
final TreeUtils mockTreeUtils = mock(TreeUtils.class);
final TreeEvent mockTreeEvent = mock(TreeEvent.class);
final List<TreeEvent> mockSubtree = (List<TreeEvent>) mock(List.class);
@@ -261,7 +261,7 @@ public class GetSNMPHandlerTest {
final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
getSNMPHandler.setTreeUtils(mockTreeUtils);
- final SNMPWalkException snmpWalkException = Assert.assertThrows(
+ final SNMPWalkException snmpWalkException = assertThrows(
SNMPWalkException.class,
() -> getSNMPHandler.walk(OID)
);
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SNMPRequestIT.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SNMPRequestIT.java
index 9d43537cdd..2cc3f1c6e9 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SNMPRequestIT.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SNMPRequestIT.java
@@ -29,11 +29,10 @@ import org.apache.nifi.snmp.testagents.TestAgent;
import org.apache.nifi.snmp.testagents.TestSNMPV1Agent;
import org.apache.nifi.snmp.testagents.TestSNMPV2cAgent;
import org.apache.nifi.snmp.testagents.TestSNMPV3Agent;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.Arguments;
+import org.junit.jupiter.params.provider.MethodSource;
import org.snmp4j.agent.mo.DefaultMOFactory;
import org.snmp4j.agent.mo.MOAccessImpl;
import org.snmp4j.mp.SnmpConstants;
@@ -42,7 +41,6 @@ import org.snmp4j.smi.OctetString;
import java.io.IOException;
import java.util.Arrays;
-import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
@@ -51,12 +49,13 @@ import java.util.Optional;
import java.util.Set;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.stream.Collectors;
+import java.util.stream.Stream;
import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.junit.jupiter.api.Assertions.fail;
-@RunWith(Parameterized.class)
-public class SNMPRequestIT {
+class SNMPRequestIT {
private static final String LOCALHOST = "127.0.0.1";
private static final String INVALID_HOST = "127.0.0.2";
@@ -102,185 +101,283 @@ public class SNMPRequestIT {
registerManagedObjects(v3TestAgent);
}
- @Before
- public void initAgent() throws IOException {
- agent.start();
- }
-
- @After
+ @AfterEach
public void tearDown() {
- agent.stop();
- agent.unregister();
snmpResourceHandler.close();
}
- @Parameterized.Parameters
- public static Collection<Object[]> data() {
- return Arrays.asList(new Object[][]{
- {SnmpConstants.version1, snmpV1ConfigurationFactory, v1TestAgent, NO_SUCH_NAME, NO_SUCH_NAME, NO_SUCH_NAME, NO_SUCH_NAME},
- {SnmpConstants.version2c, snmpv2cConfigurationFactory, v2cTestAgent, NOT_WRITABLE, NO_ACCESS, NO_SUCH_OBJECT, UNABLE_TO_CREATE_OBJECT},
- {SnmpConstants.version3, snmpv3ConfigurationFactory, v3TestAgent, NOT_WRITABLE, NO_ACCESS, NO_SUCH_OBJECT, UNABLE_TO_CREATE_OBJECT}
- });
+ private static Stream<Arguments> provideBasicArguments() {
+ return Stream.of(
+ Arguments.of(SnmpConstants.version1, snmpV1ConfigurationFactory, v1TestAgent),
+ Arguments.of(SnmpConstants.version2c, snmpv2cConfigurationFactory, v2cTestAgent),
+ Arguments.of(SnmpConstants.version3, snmpv3ConfigurationFactory, v3TestAgent)
+ );
+ }
+
+ private static Stream<Arguments> provideCannotSetReadOnlyOidArguments() {
+ return Stream.of(
+ Arguments.of(SnmpConstants.version1, snmpV1ConfigurationFactory, v1TestAgent, NO_SUCH_NAME),
+ Arguments.of(SnmpConstants.version2c, snmpv2cConfigurationFactory, v2cTestAgent, NOT_WRITABLE),
+ Arguments.of(SnmpConstants.version3, snmpv3ConfigurationFactory, v3TestAgent, NOT_WRITABLE)
+ );
}
- private final int version;
- private final SNMPConfigurationFactory snmpConfigurationFactory;
- private final TestAgent agent;
- private final String cannotSetReadOnlyOidStatusMessage;
- private final String cannotModifyOidStatusMessage;
- private final String getInvalidOidStatusMessage;
- private final String setInvalidOidStatusMessage;
-
- public SNMPRequestIT(final int version, final SNMPConfigurationFactory snmpConfigurationFactory, final TestAgent agent,
- final String cannotSetReadOnlyOidStatusMessage, final String cannotModifyOidStatusMessage,
- final String getInvalidOidStatusMessage, final String setInvalidOidStatusMessage) {
- this.version = version;
- this.snmpConfigurationFactory = snmpConfigurationFactory;
- this.agent = agent;
- this.cannotSetReadOnlyOidStatusMessage = cannotSetReadOnlyOidStatusMessage;
- this.cannotModifyOidStatusMessage = cannotModifyOidStatusMessage;
- this.getInvalidOidStatusMessage = getInvalidOidStatusMessage;
- this.setInvalidOidStatusMessage = setInvalidOidStatusMessage;
+ private static Stream<Arguments> provideCannotModifyOidStatusMessageArguments() {
+ return Stream.of(
+ Arguments.of(SnmpConstants.version1, snmpV1ConfigurationFactory, v1TestAgent, NO_SUCH_NAME),
+ Arguments.of(SnmpConstants.version2c, snmpv2cConfigurationFactory, v2cTestAgent, NO_ACCESS),
+ Arguments.of(SnmpConstants.version3, snmpv3ConfigurationFactory, v3TestAgent, NO_ACCESS)
+ );
}
- @Test
- public void testSuccessfulSnmpGet() throws IOException {
- final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
- snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
- final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
- final SNMPSingleResponse response = getSNMPHandler.get(READ_ONLY_OID_1);
- assertEquals(READ_ONLY_OID_VALUE_1, response.getVariableBindings().get(0).getVariable());
- assertEquals(SUCCESS, response.getErrorStatusText());
+ private static Stream<Arguments> provideGetInvalidOidStatusMessageArguments() {
+ return Stream.of(
+ Arguments.of(SnmpConstants.version1, snmpV1ConfigurationFactory, v1TestAgent, NO_SUCH_NAME),
+ Arguments.of(SnmpConstants.version2c, snmpv2cConfigurationFactory, v2cTestAgent, NO_SUCH_OBJECT),
+ Arguments.of(SnmpConstants.version3, snmpv3ConfigurationFactory, v3TestAgent, NO_SUCH_OBJECT)
+ );
+ }
+ private static Stream<Arguments> provideSetInvalidOidStatusMessageArguments() {
+ return Stream.of(
+ Arguments.of(SnmpConstants.version1, snmpV1ConfigurationFactory, v1TestAgent, NO_SUCH_NAME),
+ Arguments.of(SnmpConstants.version2c, snmpv2cConfigurationFactory, v2cTestAgent, UNABLE_TO_CREATE_OBJECT),
+ Arguments.of(SnmpConstants.version3, snmpv3ConfigurationFactory, v3TestAgent, UNABLE_TO_CREATE_OBJECT)
+ );
}
- @Test
- public void testSuccessfulSnmpGetWithFlowFileInput() throws IOException {
- final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
- snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
- final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
- final Optional<SNMPSingleResponse> optionalResponse = getSNMPHandler.get(getFlowFileAttributesForSnmpGet(READ_ONLY_OID_1, READ_ONLY_OID_2));
- if (optionalResponse.isPresent()) {
- final SNMPSingleResponse response = optionalResponse.get();
- Set<String> expectedVariables = new HashSet<>(Arrays.asList(READ_ONLY_OID_VALUE_1, READ_ONLY_OID_VALUE_2));
- Set<String> actualVariables = response.getVariableBindings().stream().map(SNMPValue::getVariable).collect(Collectors.toSet());
- assertEquals(expectedVariables, actualVariables);
+ @ParameterizedTest
+ @MethodSource("provideBasicArguments")
+ void testSuccessfulSnmpGet(int version, SNMPConfigurationFactory snmpConfigurationFactory, TestAgent agent) throws IOException {
+ agent.start();
+ try {
+ final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
+ snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
+ final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
+ final SNMPSingleResponse response = getSNMPHandler.get(READ_ONLY_OID_1);
+ assertEquals(READ_ONLY_OID_VALUE_1, response.getVariableBindings().get(0).getVariable());
assertEquals(SUCCESS, response.getErrorStatusText());
- } else {
- fail("Response is not present.");
+ } catch (Exception e) {
+ fail(e);
+ } finally {
+ agent.stop();
+ agent.unregister();
}
}
- @Test
- public void testSuccessfulSnmpWalk() {
- final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
- snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
- final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
- final SNMPTreeResponse response = getSNMPHandler.walk(WALK_OID);
-
- assertSubTreeContainsOids(response);
+ @ParameterizedTest
+ @MethodSource("provideBasicArguments")
+ void testSuccessfulSnmpGetWithFlowFileInput(int version, SNMPConfigurationFactory snmpConfigurationFactory, TestAgent agent) throws IOException {
+ agent.start();
+ try {
+ final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
+ snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
+ final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
+ final Optional<SNMPSingleResponse> optionalResponse = getSNMPHandler.get(getFlowFileAttributesForSnmpGet(READ_ONLY_OID_1, READ_ONLY_OID_2));
+ if (optionalResponse.isPresent()) {
+ final SNMPSingleResponse response = optionalResponse.get();
+ Set<String> expectedVariables = new HashSet<>(Arrays.asList(READ_ONLY_OID_VALUE_1, READ_ONLY_OID_VALUE_2));
+ Set<String> actualVariables = response.getVariableBindings().stream().map(SNMPValue::getVariable).collect(Collectors.toSet());
+ assertEquals(expectedVariables, actualVariables);
+ assertEquals(SUCCESS, response.getErrorStatusText());
+ } else {
+ fail("Response is not present.");
+ }
+ } catch (Exception e) {
+ fail(e);
+ } finally {
+ agent.stop();
+ agent.unregister();
+ }
}
- @Test(expected = RequestTimeoutException.class)
- public void testSnmpGetTimeoutReturnsNull() throws IOException {
- final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfigWithCustomHost(INVALID_HOST, agent.getPort());
- snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
- final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
- getSNMPHandler.get(READ_ONLY_OID_1);
+ @ParameterizedTest
+ @MethodSource("provideBasicArguments")
+ void testSuccessfulSnmpWalk(int version, SNMPConfigurationFactory snmpConfigurationFactory, TestAgent agent) throws IOException {
+ agent.start();
+ try {
+ final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
+ snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
+ final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
+ final SNMPTreeResponse response = getSNMPHandler.walk(WALK_OID);
+
+ assertSubTreeContainsOids(response);
+ } catch (Exception e) {
+ fail(e);
+ } finally {
+ agent.stop();
+ agent.unregister();
+ }
}
- @Test
- public void testSnmpGetInvalidOidWithFlowFileInput() throws IOException {
- final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
- snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
- final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
- final Optional<SNMPSingleResponse> optionalResponse = getSNMPHandler.get(getFlowFileAttributesForSnmpGet(INVALID_OID, READ_ONLY_OID_2));
- if (optionalResponse.isPresent()) {
- final SNMPSingleResponse response = optionalResponse.get();
- if (version == SnmpConstants.version1) {
- assertEquals("Null", response.getVariableBindings().get(1).getVariable());
- assertEquals(READ_ONLY_OID_VALUE_2, response.getVariableBindings().get(0).getVariable());
- assertEquals(NO_SUCH_NAME, response.getErrorStatusText());
+ @ParameterizedTest
+ @MethodSource("provideBasicArguments")
+ void testSnmpGetTimeoutReturnsNull(int version, SNMPConfigurationFactory snmpConfigurationFactory, TestAgent agent) throws IOException {
+ agent.start();
+ try {
+ final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfigWithCustomHost(INVALID_HOST, agent.getPort());
+ snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
+
+ final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
+ assertThrows(RequestTimeoutException.class, () ->
+ getSNMPHandler.get(READ_ONLY_OID_1)
+ );
+ } catch (Exception e) {
+ fail(e);
+ } finally {
+ agent.stop();
+ agent.unregister();
+ }
+ }
+
+ @ParameterizedTest
+ @MethodSource("provideBasicArguments")
+ void testSnmpGetInvalidOidWithFlowFileInput(int version, SNMPConfigurationFactory snmpConfigurationFactory, TestAgent agent) throws IOException {
+ agent.start();
+ try {
+ final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
+ snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
+ final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
+ final Optional<SNMPSingleResponse> optionalResponse = getSNMPHandler.get(getFlowFileAttributesForSnmpGet(INVALID_OID, READ_ONLY_OID_2));
+ if (optionalResponse.isPresent()) {
+ final SNMPSingleResponse response = optionalResponse.get();
+ if (version == SnmpConstants.version1) {
+ assertEquals("Null", response.getVariableBindings().get(1).getVariable());
+ assertEquals(READ_ONLY_OID_VALUE_2, response.getVariableBindings().get(0).getVariable());
+ assertEquals(NO_SUCH_NAME, response.getErrorStatusText());
+ } else {
+ assertEquals(NO_SUCH_OBJECT, response.getVariableBindings().get(1).getVariable());
+ assertEquals(READ_ONLY_OID_VALUE_2, response.getVariableBindings().get(0).getVariable());
+ assertEquals(SUCCESS, response.getErrorStatusText());
+ }
} else {
- assertEquals(NO_SUCH_OBJECT, response.getVariableBindings().get(1).getVariable());
- assertEquals(READ_ONLY_OID_VALUE_2, response.getVariableBindings().get(0).getVariable());
- assertEquals(SUCCESS, response.getErrorStatusText());
+ fail("Response is not present.");
}
- } else {
- fail("Response is not present.");
+ } catch (Exception e) {
+ fail(e);
+ } finally {
+ agent.stop();
+ agent.unregister();
}
}
- @Test
- public void testSuccessfulSnmpSet() throws IOException {
- final Map<String, String> flowFileAttributes = getFlowFileAttributes(WRITE_ONLY_OID);
-
- final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
- snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
- final SetSNMPHandler setSNMPHandler = new SetSNMPHandler(snmpResourceHandler);
- final Optional<SNMPSingleResponse> optionalResponse = setSNMPHandler.set(flowFileAttributes);
- if (optionalResponse.isPresent()) {
- final SNMPSingleResponse response = optionalResponse.get();
- assertEquals(TEST_OID_VALUE, response.getVariableBindings().get(0).getVariable());
- assertEquals(SUCCESS, response.getErrorStatusText());
- } else {
- fail("Response is not present.");
+ @ParameterizedTest
+ @MethodSource("provideBasicArguments")
+ void testSuccessfulSnmpSet(int version, SNMPConfigurationFactory snmpConfigurationFactory, TestAgent agent) throws IOException {
+ agent.start();
+ try {
+ final Map<String, String> flowFileAttributes = getFlowFileAttributes(WRITE_ONLY_OID);
+ final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
+ snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
+ final SetSNMPHandler setSNMPHandler = new SetSNMPHandler(snmpResourceHandler);
+ final Optional<SNMPSingleResponse> optionalResponse = setSNMPHandler.set(flowFileAttributes);
+ if (optionalResponse.isPresent()) {
+ final SNMPSingleResponse response = optionalResponse.get();
+ assertEquals(TEST_OID_VALUE, response.getVariableBindings().get(0).getVariable());
+ assertEquals(SUCCESS, response.getErrorStatusText());
+ } else {
+ fail("Response is not present.");
+ }
+ } catch (Exception e) {
+ fail(e);
+ } finally {
+ agent.stop();
+ agent.unregister();
}
}
- @Test
- public void testCannotSetReadOnlyObject() throws IOException {
- final Map<String, String> flowFileAttributes = getFlowFileAttributes(READ_ONLY_OID_1);
-
- final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
- snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
- final SetSNMPHandler setSNMPHandler = new SetSNMPHandler(snmpResourceHandler);
- final Optional<SNMPSingleResponse> optionalResponse = setSNMPHandler.set(flowFileAttributes);
- if (optionalResponse.isPresent()) {
- final SNMPSingleResponse response = optionalResponse.get();
- assertEquals(cannotSetReadOnlyOidStatusMessage, response.getErrorStatusText());
- } else {
- fail("Response is not present.");
+ @ParameterizedTest
+ @MethodSource("provideCannotSetReadOnlyOidArguments")
+ void testCannotSetReadOnlyObject(int version, SNMPConfigurationFactory snmpConfigurationFactory, TestAgent agent,
+ String cannotSetReadOnlyOidStatusMessage) throws IOException {
+ agent.start();
+ try {
+ final Map<String, String> flowFileAttributes = getFlowFileAttributes(READ_ONLY_OID_1);
+ final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
+ snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
+ final SetSNMPHandler setSNMPHandler = new SetSNMPHandler(snmpResourceHandler);
+ final Optional<SNMPSingleResponse> optionalResponse = setSNMPHandler.set(flowFileAttributes);
+ if (optionalResponse.isPresent()) {
+ final SNMPSingleResponse response = optionalResponse.get();
+ assertEquals(cannotSetReadOnlyOidStatusMessage, response.getErrorStatusText());
+ } else {
+ fail("Response is not present.");
+ }
+ } catch (Exception e) {
+ fail(e);
+ } finally {
+ agent.stop();
+ agent.unregister();
}
}
- @Test
- public void testCannotGetWriteOnlyObject() throws IOException {
- final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
- snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
- final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
- final SNMPSingleResponse response = getSNMPHandler.get(WRITE_ONLY_OID);
-
- assertEquals(cannotModifyOidStatusMessage, response.getErrorStatusText());
+ @ParameterizedTest
+ @MethodSource("provideCannotModifyOidStatusMessageArguments")
+ void testCannotGetWriteOnlyObject(int version, SNMPConfigurationFactory snmpConfigurationFactory, TestAgent agent,
+ String cannotModifyOidStatusMessage) throws IOException {
+ agent.start();
+ try {
+ final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
+ snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
+ final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
+ final SNMPSingleResponse response = getSNMPHandler.get(WRITE_ONLY_OID);
+
+ assertEquals(cannotModifyOidStatusMessage, response.getErrorStatusText());
+ } catch (Exception e) {
+ fail(e);
+ } finally {
+ agent.stop();
+ agent.unregister();
+ }
}
- @Test
- public void testCannotGetInvalidOid() throws IOException {
- final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
- snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
- final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
- final SNMPSingleResponse response = getSNMPHandler.get(INVALID_OID);
- if (version == SnmpConstants.version1) {
- assertEquals(getInvalidOidStatusMessage, response.getErrorStatusText());
- } else {
- assertEquals(getInvalidOidStatusMessage, response.getVariableBindings().get(0).getVariable());
- assertEquals(SUCCESS, response.getErrorStatusText());
+ @ParameterizedTest
+ @MethodSource("provideGetInvalidOidStatusMessageArguments")
+ void testCannotGetInvalidOid(int version, SNMPConfigurationFactory snmpConfigurationFactory, TestAgent agent,
+ String getInvalidOidStatusMessage) throws IOException {
+ agent.start();
+ try {
+ final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
+ snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
+ final GetSNMPHandler getSNMPHandler = new GetSNMPHandler(snmpResourceHandler);
+ final SNMPSingleResponse response = getSNMPHandler.get(INVALID_OID);
+ if (version == SnmpConstants.version1) {
+ assertEquals(getInvalidOidStatusMessage, response.getErrorStatusText());
+ } else {
+ assertEquals(getInvalidOidStatusMessage, response.getVariableBindings().get(0).getVariable());
+ assertEquals(SUCCESS, response.getErrorStatusText());
+ }
+ } catch (Exception e) {
+ fail(e);
+ } finally {
+ agent.stop();
+ agent.unregister();
}
}
- @Test
- public void testCannotSetInvalidOid() throws IOException {
- final Map<String, String> flowFileAttributes = getFlowFileAttributes(INVALID_OID);
- final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
- snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
- final SetSNMPHandler setSNMPHandler = new SetSNMPHandler(snmpResourceHandler);
- final Optional<SNMPSingleResponse> optionalResponse = setSNMPHandler.set(flowFileAttributes);
- if (optionalResponse.isPresent()) {
- final SNMPSingleResponse response = optionalResponse.get();
- assertEquals(setInvalidOidStatusMessage, response.getErrorStatusText());
- } else {
- fail("Response is not present.");
+ @ParameterizedTest
+ @MethodSource("provideSetInvalidOidStatusMessageArguments")
+ void testCannotSetInvalidOid(int version, SNMPConfigurationFactory snmpConfigurationFactory, TestAgent agent,
+ String setInvalidOidStatusMessage) throws IOException {
+ agent.start();
+ try {
+ final Map<String, String> flowFileAttributes = getFlowFileAttributes(INVALID_OID);
+ final SNMPConfiguration snmpConfiguration = snmpConfigurationFactory.createSnmpGetSetConfiguration(agent.getPort());
+ snmpResourceHandler = SNMPFactoryProvider.getFactory(version).createSNMPResourceHandler(snmpConfiguration);
+ final SetSNMPHandler setSNMPHandler = new SetSNMPHandler(snmpResourceHandler);
+ final Optional<SNMPSingleResponse> optionalResponse = setSNMPHandler.set(flowFileAttributes);
+ if (optionalResponse.isPresent()) {
+ final SNMPSingleResponse response = optionalResponse.get();
+ assertEquals(setInvalidOidStatusMessage, response.getErrorStatusText());
+ } else {
+ fail("Response is not present.");
+ }
+ } catch (Exception e) {
+ fail(e);
+ } finally {
+ agent.stop();
+ agent.unregister();
}
}
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SNMPTrapReceiverHandlerTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SNMPTrapReceiverHandlerTest.java
index 3759df62b5..9bb99c9327 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SNMPTrapReceiverHandlerTest.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SNMPTrapReceiverHandlerTest.java
@@ -21,7 +21,7 @@ import org.apache.nifi.remote.io.socket.NetworkUtils;
import org.apache.nifi.snmp.configuration.SNMPConfiguration;
import org.apache.nifi.snmp.utils.JsonFileUsmReader;
import org.apache.nifi.util.MockComponentLog;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import org.mockito.ArgumentCaptor;
import org.snmp4j.Snmp;
import org.snmp4j.mp.SnmpConstants;
@@ -31,9 +31,9 @@ import org.snmp4j.security.UsmUser;
import java.io.IOException;
import java.util.List;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Answers.RETURNS_DEEP_STUBS;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock;
@@ -41,12 +41,12 @@ import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-public class SNMPTrapReceiverHandlerTest {
+class SNMPTrapReceiverHandlerTest {
public static final String USERS_JSON = "src/test/resources/users.json";
@Test
- public void testTrapReceiverCreatesCommandResponder() {
+ void testTrapReceiverCreatesCommandResponder() {
final SNMPConfiguration snmpConfiguration = mock(SNMPConfiguration.class);
final ProcessSessionFactory mockProcessSessionFactory = mock(ProcessSessionFactory.class);
final MockComponentLog mockComponentLog = new MockComponentLog("componentId", new Object());
@@ -65,7 +65,7 @@ public class SNMPTrapReceiverHandlerTest {
}
@Test
- public void testCloseTrapReceiverCleansUpResources() throws IOException {
+ void testCloseTrapReceiverCleansUpResources() throws IOException {
final SNMPConfiguration snmpConfiguration = mock(SNMPConfiguration.class);
final ProcessSessionFactory mockProcessSessionFactory = mock(ProcessSessionFactory.class);
final MockComponentLog mockComponentLog = new MockComponentLog("componentId", new Object());
@@ -88,7 +88,7 @@ public class SNMPTrapReceiverHandlerTest {
}
@Test
- public void testAddUsmUsers() {
+ void testAddUsmUsers() {
final List<UsmUser> usmUsers = new JsonFileUsmReader(USERS_JSON).readUsm();
final SNMPConfiguration snmpConfiguration = SNMPConfiguration.builder()
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SNMPTrapReceiverTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SNMPTrapReceiverTest.java
index 6b77b85537..eeca40eefe 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SNMPTrapReceiverTest.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SNMPTrapReceiverTest.java
@@ -24,8 +24,8 @@ import org.apache.nifi.util.MockComponentLog;
import org.apache.nifi.util.MockFlowFile;
import org.apache.nifi.util.MockProcessSession;
import org.apache.nifi.util.SharedSessionState;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import org.snmp4j.CommandResponderEvent;
import org.snmp4j.PDU;
import org.snmp4j.PDUv1;
@@ -36,13 +36,13 @@ import java.util.List;
import java.util.Vector;
import java.util.concurrent.atomic.AtomicLong;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
-public class SNMPTrapReceiverTest {
+class SNMPTrapReceiverTest {
private static final Object MOCK_COMPONENT_ID = new Object();
@@ -53,7 +53,7 @@ public class SNMPTrapReceiverTest {
private SNMPTrapReceiver snmpTrapReceiver;
- @Before
+ @BeforeEach
public void init() {
mockProcessSessionFactory = mock(ProcessSessionFactory.class);
mockComponentLog = new MockComponentLog("componentId", MOCK_COMPONENT_ID);
@@ -64,7 +64,7 @@ public class SNMPTrapReceiverTest {
}
@Test
- public void testReceiveTrapWithNullPduLogsError() {
+ void testReceiveTrapWithNullPduLogsError() {
CommandResponderEvent mockEvent = mock(CommandResponderEvent.class);
snmpTrapReceiver.processPdu(mockEvent);
@@ -75,7 +75,7 @@ public class SNMPTrapReceiverTest {
}
@Test
- public void testReceiveTrapWithInvalidPduTypeLogsError() {
+ void testReceiveTrapWithInvalidPduTypeLogsError() {
final CommandResponderEvent mockEvent = mock(CommandResponderEvent.class);
when(mockPdu.getType()).thenReturn(PDU.REPORT);
@@ -88,7 +88,7 @@ public class SNMPTrapReceiverTest {
}
@Test
- public void testTrapReceiverCreatesTrapPduV1FlowFile() {
+ void testTrapReceiverCreatesTrapPduV1FlowFile() {
final CommandResponderEvent mockEvent = mock(CommandResponderEvent.class);
final PDUv1 mockV1Pdu = mock(PDUv1.class);
@@ -110,7 +110,7 @@ public class SNMPTrapReceiverTest {
}
@Test
- public void testTrapReceiverCreatesTrapPduV2FlowFile() {
+ void testTrapReceiverCreatesTrapPduV2FlowFile() {
final CommandResponderEvent mockEvent = mock(CommandResponderEvent.class);
when(mockPdu.getType()).thenReturn(PDU.TRAP);
@@ -131,7 +131,7 @@ public class SNMPTrapReceiverTest {
}
@Test
- public void testReceiveTrapWithErrorGetsTransferredToFailure() {
+ void testReceiveTrapWithErrorGetsTransferredToFailure() {
final CommandResponderEvent mockEvent = mock(CommandResponderEvent.class);
when(mockPdu.getType()).thenReturn(PDU.TRAP);
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SendTrapSNMPHandlerTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SendTrapSNMPHandlerTest.java
index 9a28b9b499..28584d55dd 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SendTrapSNMPHandlerTest.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SendTrapSNMPHandlerTest.java
@@ -21,9 +21,9 @@ import org.apache.nifi.snmp.configuration.V2TrapConfiguration;
import org.apache.nifi.snmp.factory.trap.V1TrapPDUFactory;
import org.apache.nifi.snmp.factory.trap.V2TrapPDUFactory;
import org.apache.nifi.util.MockComponentLog;
-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.snmp4j.PDU;
import org.snmp4j.Snmp;
import org.snmp4j.Target;
@@ -33,12 +33,12 @@ import java.io.IOException;
import java.time.Instant;
import java.util.Collections;
-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.verify;
import static org.mockito.Mockito.when;
-public class SendTrapSNMPHandlerTest {
+class SendTrapSNMPHandlerTest {
private Target mockTarget;
private Snmp mockSnmpManager;
@@ -50,7 +50,7 @@ public class SendTrapSNMPHandlerTest {
private SNMPResourceHandler snmpResourceHandler;
private SendTrapSNMPHandler sendTrapSNMPHandler;
- @Before
+ @BeforeEach
public void init() throws IOException {
mockTarget = mock(Target.class);
mockSnmpManager = mock(Snmp.class);
@@ -81,13 +81,13 @@ public class SendTrapSNMPHandlerTest {
};
}
- @After
+ @AfterEach
public void tearDown() {
snmpResourceHandler.close();
}
@Test
- public void testSendV1TrapWithValidFlowfile() throws IOException {
+ void testSendV1TrapWithValidFlowfile() throws IOException {
final String flowFileOid = "1.3.6.1.2.1.1.1.0";
sendTrapSNMPHandler.sendTrap(Collections.singletonMap("snmp$" + flowFileOid, "OID value"), mockV1TrapConfiguration);
@@ -95,7 +95,7 @@ public class SendTrapSNMPHandlerTest {
}
@Test
- public void testSendV2TrapWithValidFlowfile() throws IOException {
+ void testSendV2TrapWithValidFlowfile() throws IOException {
final String flowFileOid = "1.3.6.1.2.1.1.1.0";
sendTrapSNMPHandler.sendTrap(Collections.singletonMap("snmp$" + flowFileOid, "OID value"), mockV2TrapConfiguration);
@@ -103,7 +103,7 @@ public class SendTrapSNMPHandlerTest {
}
@Test
- public void testSendV1TrapWithFlowfileWithoutOptionalSnmpAttributes() throws IOException {
+ void testSendV1TrapWithFlowfileWithoutOptionalSnmpAttributes() throws IOException {
sendTrapSNMPHandler.sendTrap(Collections.singletonMap("invalid key", "invalid value"), mockV1TrapConfiguration);
verify(mockSnmpManager).send(mockPdu, mockTarget);
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SetSNMPHandlerTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SetSNMPHandlerTest.java
index 65d9f59b2b..67213053ca 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SetSNMPHandlerTest.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/operations/SetSNMPHandlerTest.java
@@ -18,10 +18,9 @@ package org.apache.nifi.snmp.operations;
import org.apache.nifi.snmp.dto.SNMPSingleResponse;
import org.apache.nifi.snmp.exception.RequestTimeoutException;
-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.snmp4j.PDU;
import org.snmp4j.Snmp;
import org.snmp4j.Target;
@@ -35,14 +34,15 @@ import java.util.Map;
import java.util.Optional;
import static org.apache.nifi.snmp.operations.SNMPResourceHandler.REQUEST_TIMEOUT_EXCEPTION_TEMPLATE;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-public class SetSNMPHandlerTest {
+class SetSNMPHandlerTest {
private static final PDUFactory defaultSetPduFactory = new DefaultPDUFactory(PDU.SET);
@@ -54,7 +54,7 @@ public class SetSNMPHandlerTest {
private SetSNMPHandler setSNMPHandler;
- @Before
+ @BeforeEach
public void init() {
mockTarget = mock(Target.class);
mockSnmpManager = mock(Snmp.class);
@@ -70,13 +70,13 @@ public class SetSNMPHandlerTest {
SetSNMPHandler.setSetPduFactory(mockPduFactory);
}
- @After
+ @AfterEach
public void tearDown() {
SetSNMPHandler.setSetPduFactory(defaultSetPduFactory);
}
@Test
- public void testSetSnmpValidResponse() throws IOException {
+ void testSetSnmpValidResponse() throws IOException {
final String flowFileOid = "1.3.6.1.2.1.1.1.0";
final Map<String, String> flowFileAttributes = new HashMap<>();
flowFileAttributes.put("snmp$" + flowFileOid, "OID value");
@@ -90,14 +90,14 @@ public class SetSNMPHandlerTest {
}
@Test
- public void testSetSnmpTimeoutThrowsException() throws IOException {
+ void testSetSnmpTimeoutThrowsException() throws IOException {
final String flowFileOid = "1.3.6.1.2.1.1.1.0";
final Map<String, String> flowFileAttributes = new HashMap<>();
flowFileAttributes.put("snmp$" + flowFileOid, "OID value");
when(mockSnmpManager.set(any(PDU.class), any(Target.class))).thenReturn(mockResponseEvent);
- final RequestTimeoutException requestTimeoutException = Assert.assertThrows(
+ final RequestTimeoutException requestTimeoutException = assertThrows(
RequestTimeoutException.class,
() -> setSNMPHandler.set(flowFileAttributes)
);
@@ -106,7 +106,7 @@ public class SetSNMPHandlerTest {
}
@Test
- public void testSetSnmpWithInvalidPduThrowsException() throws IOException {
+ void testSetSnmpWithInvalidPduThrowsException() throws IOException {
final Map<String, String> flowFileAttributes = new HashMap<>();
flowFileAttributes.put("invalid key", "invalid value");
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/AbstractSNMPProcessorTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/AbstractSNMPProcessorTest.java
index 6622f87d96..a93043ed49 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/AbstractSNMPProcessorTest.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/AbstractSNMPProcessorTest.java
@@ -25,8 +25,8 @@ import org.apache.nifi.util.MockProcessContext;
import org.apache.nifi.util.MockProcessSession;
import org.apache.nifi.util.SharedSessionState;
import org.apache.nifi.util.TestRunner;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import org.snmp4j.mp.SnmpConstants;
import java.util.Collections;
@@ -34,12 +34,12 @@ import java.util.List;
import java.util.Map;
import java.util.concurrent.atomic.AtomicLong;
-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;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
-public class AbstractSNMPProcessorTest {
+class AbstractSNMPProcessorTest {
private static final String TEST_OID = "1.3.6.1.4.1.32437.1.5.1.4.2.0";
private static final String UNSUPPORTED_SECURITY_LEVEL = "1.3.6.1.6.3.15.1.1.1";
@@ -51,7 +51,7 @@ public class AbstractSNMPProcessorTest {
private SNMPSingleResponse mockResponse;
private TestRunner getTestRunner;
- @Before
+ @BeforeEach
public void init() {
getTestRunner = new SNMPV1TestRunnerFactory().createSnmpGetTestRunner(NetworkUtils.getAvailableUdpPort(), TEST_OID, "GET");
getSNMP = (GetSNMP) getTestRunner.getProcessor();
@@ -62,7 +62,7 @@ public class AbstractSNMPProcessorTest {
}
@Test
- public void testProcessResponseWithInvalidResponseThrowsException() {
+ void testProcessResponseWithInvalidResponseThrowsException() {
final String errorStatus = "Test error status text";
when(mockResponse.getErrorStatusText()).thenReturn(errorStatus);
@@ -75,7 +75,7 @@ public class AbstractSNMPProcessorTest {
}
@Test
- public void testProcessResponseWithNoSuchObjectThrowsException() {
+ void testProcessResponseWithNoSuchObjectThrowsException() {
when(mockResponse.isValid()).thenReturn(true);
when(mockResponse.getVersion()).thenReturn(SnmpConstants.version2c);
@@ -92,7 +92,7 @@ public class AbstractSNMPProcessorTest {
}
@Test
- public void testValidProcessResponseWithoutVariableBindingThrowsException() {
+ void testValidProcessResponseWithoutVariableBindingThrowsException() {
when(mockResponse.isValid()).thenReturn(true);
when(mockResponse.getVersion()).thenReturn(SnmpConstants.version2c);
@@ -107,7 +107,7 @@ public class AbstractSNMPProcessorTest {
}
@Test
- public void testValidProcessResponse() {
+ void testValidProcessResponse() {
when(mockResponse.isValid()).thenReturn(true);
when(mockResponse.getVersion()).thenReturn(SnmpConstants.version2c);
@@ -124,7 +124,7 @@ public class AbstractSNMPProcessorTest {
}
@Test
- public void testProcessResponseWithReportPduWithoutErrorMessage() {
+ void testProcessResponseWithReportPduWithoutErrorMessage() {
when(mockResponse.isValid()).thenReturn(true);
when(mockResponse.isReportPdu()).thenReturn(true);
@@ -143,7 +143,7 @@ public class AbstractSNMPProcessorTest {
}
@Test
- public void testProcessResponseWithReportPdu() {
+ void testProcessResponseWithReportPdu() {
when(mockResponse.isValid()).thenReturn(true);
when(mockResponse.isReportPdu()).thenReturn(true);
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/GetSNMPIT.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/GetSNMPIT.java
index b19a9411f1..0bf9e752dc 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/GetSNMPIT.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/GetSNMPIT.java
@@ -28,26 +28,23 @@ import org.apache.nifi.snmp.testagents.TestSNMPV3Agent;
import org.apache.nifi.snmp.utils.SNMPUtils;
import org.apache.nifi.util.MockFlowFile;
import org.apache.nifi.util.TestRunner;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.Arguments;
+import org.junit.jupiter.params.provider.MethodSource;
import org.snmp4j.agent.mo.DefaultMOFactory;
import org.snmp4j.agent.mo.MOAccessImpl;
import org.snmp4j.smi.OID;
import org.snmp4j.smi.OctetString;
import java.io.IOException;
-import java.util.Arrays;
-import java.util.Collection;
import java.util.Collections;
+import java.util.stream.Stream;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.fail;
-@RunWith(Parameterized.class)
-public class GetSNMPIT {
+class GetSNMPIT {
private static final String LOCALHOST = "127.0.0.1";
private static final String READ_ONLY_OID_1 = "1.3.6.1.4.1.32437.1.5.1.4.2.0";
@@ -73,82 +70,87 @@ public class GetSNMPIT {
registerManagedObjects(v3TestAgent);
}
- @Parameterized.Parameters
- public static Collection<Object[]> data() {
- return Arrays.asList(new Object[][]{
- {v1TestAgent, v1TestRunnerFactory},
- {v2cTestAgent, v2cTestRunnerFactory},
- {v3TestAgent, v3TestRunnerFactory}
- });
+ private static Stream<Arguments> provideArguments() {
+ return Stream.of(
+ Arguments.of(v1TestAgent, v1TestRunnerFactory),
+ Arguments.of(v2cTestAgent, v2cTestRunnerFactory),
+ Arguments.of(v3TestAgent, v3TestRunnerFactory)
+ );
}
- private final TestAgent testAgent;
- private final SNMPTestRunnerFactory testRunnerFactory;
-
- public GetSNMPIT(final TestAgent testAgent, final SNMPTestRunnerFactory testRunnerFactory) {
- this.testAgent = testAgent;
- this.testRunnerFactory = testRunnerFactory;
- }
-
- @Before
- public void setUp() throws IOException {
+ @ParameterizedTest
+ @MethodSource("provideArguments")
+ void testSnmpGet(TestAgent testAgent, SNMPTestRunnerFactory testRunnerFactory) throws IOException {
testAgent.start();
+ try {
+ final TestRunner runner = testRunnerFactory.createSnmpGetTestRunner(testAgent.getPort(), READ_ONLY_OID_1, GET);
+ runner.run();
+ final MockFlowFile successFF = runner.getFlowFilesForRelationship(GetSNMP.REL_SUCCESS).get(0);
+
+ assertNotNull(successFF);
+ assertEquals(READ_ONLY_OID_VALUE_1, successFF.getAttribute(SNMPUtils.SNMP_PROP_PREFIX + READ_ONLY_OID_1 + SNMPUtils.SNMP_PROP_DELIMITER + "4"));
+ } catch (Exception e) {
+ fail(e);
+ } finally {
+ testAgent.stop();
+ testAgent.unregister();
+ }
}
- @After
- public void tearDown() {
- testAgent.stop();
- testAgent.unregister();
- }
-
- @Test
- public void testSnmpGet() {
-
- final TestRunner runner = testRunnerFactory.createSnmpGetTestRunner(testAgent.getPort(), READ_ONLY_OID_1, GET);
- runner.run();
- final MockFlowFile successFF = runner.getFlowFilesForRelationship(GetSNMP.REL_SUCCESS).get(0);
-
- assertNotNull(successFF);
- assertEquals(READ_ONLY_OID_VALUE_1, successFF.getAttribute(SNMPUtils.SNMP_PROP_PREFIX + READ_ONLY_OID_1 + SNMPUtils.SNMP_PROP_DELIMITER + "4"));
- }
-
- @Test
- public void testSnmpWalk() {
- final TestRunner runner = testRunnerFactory.createSnmpGetTestRunner(testAgent.getPort(), WALK_OID, WALK);
- runner.run();
- final MockFlowFile successFF = runner.getFlowFilesForRelationship(GetSNMP.REL_SUCCESS).get(0);
- assertNotNull(successFF);
-
- assertEquals(READ_ONLY_OID_VALUE_1, successFF.getAttribute(SNMPUtils.SNMP_PROP_PREFIX + READ_ONLY_OID_1 + SNMPUtils.SNMP_PROP_DELIMITER + "4"));
- assertEquals(READ_ONLY_OID_VALUE_2, successFF.getAttribute(SNMPUtils.SNMP_PROP_PREFIX + READ_ONLY_OID_2 + SNMPUtils.SNMP_PROP_DELIMITER + "4"));
+ @ParameterizedTest
+ @MethodSource("provideArguments")
+ void testSnmpWalk(TestAgent testAgent, SNMPTestRunnerFactory testRunnerFactory) throws IOException {
+ testAgent.start();
+ try {
+ final TestRunner runner = testRunnerFactory.createSnmpGetTestRunner(testAgent.getPort(), WALK_OID, WALK);
+ runner.run();
+ final MockFlowFile successFF = runner.getFlowFilesForRelationship(GetSNMP.REL_SUCCESS).get(0);
+ assertNotNull(successFF);
+
+ assertEquals(READ_ONLY_OID_VALUE_1, successFF.getAttribute(SNMPUtils.SNMP_PROP_PREFIX + READ_ONLY_OID_1 + SNMPUtils.SNMP_PROP_DELIMITER + "4"));
+ assertEquals(READ_ONLY_OID_VALUE_2, successFF.getAttribute(SNMPUtils.SNMP_PROP_PREFIX + READ_ONLY_OID_2 + SNMPUtils.SNMP_PROP_DELIMITER + "4"));
+ } catch (Exception e) {
+ fail(e);
+ } finally {
+ testAgent.stop();
+ testAgent.unregister();
+ }
}
- @Test
- public void testSnmpGetWithEmptyResponse() {
- final MockFlowFile mockFlowFile = new MockFlowFile(0L);
- mockFlowFile.putAttributes(Collections.singletonMap("snmp$" + NOT_FOUND_OID, StringUtils.EMPTY));
- final TestRunner runner = testRunnerFactory.createSnmpGetTestRunner(testAgent.getPort(), NOT_FOUND_OID, GET);
- runner.enqueue(mockFlowFile);
- runner.run();
-
- if (testAgent == v1TestAgent) {
- final MockFlowFile failureFF = runner.getFlowFilesForRelationship(GetSNMP.REL_FAILURE).get(0);
- assertNotNull(failureFF);
- assertEquals(StringUtils.EMPTY, failureFF.getAttribute(SNMPUtils.SNMP_PROP_PREFIX + NOT_FOUND_OID));
- assertEquals("No such name", failureFF.getAttribute(SNMPUtils.SNMP_PROP_PREFIX + "errorStatusText"));
- } else {
- final MockFlowFile failureFF = runner.getFlowFilesForRelationship(GetSNMP.REL_FAILURE).get(0);
- assertNotNull(failureFF);
- assertEquals("noSuchObject", failureFF.getAttribute(SNMPUtils.SNMP_PROP_PREFIX + NOT_FOUND_OID + SNMPUtils.SNMP_PROP_DELIMITER + "128"));
- assertEquals("Success", failureFF.getAttribute(SNMPUtils.SNMP_PROP_PREFIX + "errorStatusText"));
+ @ParameterizedTest
+ @MethodSource("provideArguments")
+ void testSnmpGetWithEmptyResponse(TestAgent testAgent, SNMPTestRunnerFactory testRunnerFactory) throws IOException {
+ testAgent.start();
+ try {
+ final MockFlowFile mockFlowFile = new MockFlowFile(0L);
+ mockFlowFile.putAttributes(Collections.singletonMap("snmp$" + NOT_FOUND_OID, StringUtils.EMPTY));
+ final TestRunner runner = testRunnerFactory.createSnmpGetTestRunner(testAgent.getPort(), NOT_FOUND_OID, GET);
+ runner.enqueue(mockFlowFile);
+ runner.run();
+
+ if (testAgent == v1TestAgent) {
+ final MockFlowFile failureFF = runner.getFlowFilesForRelationship(GetSNMP.REL_FAILURE).get(0);
+ assertNotNull(failureFF);
+ assertEquals(StringUtils.EMPTY, failureFF.getAttribute(SNMPUtils.SNMP_PROP_PREFIX + NOT_FOUND_OID));
+ assertEquals("No such name", failureFF.getAttribute(SNMPUtils.SNMP_PROP_PREFIX + "errorStatusText"));
+ } else {
+ final MockFlowFile failureFF = runner.getFlowFilesForRelationship(GetSNMP.REL_FAILURE).get(0);
+ assertNotNull(failureFF);
+ assertEquals("noSuchObject", failureFF.getAttribute(SNMPUtils.SNMP_PROP_PREFIX + NOT_FOUND_OID + SNMPUtils.SNMP_PROP_DELIMITER + "128"));
+ assertEquals("Success", failureFF.getAttribute(SNMPUtils.SNMP_PROP_PREFIX + "errorStatusText"));
+ }
+ } catch (Exception e) {
+ fail(e);
+ } finally {
+ testAgent.stop();
+ testAgent.unregister();
}
-
}
private static void registerManagedObjects(final TestAgent agent) {
agent.registerManagedObjects(
DefaultMOFactory.getInstance().createScalar(new OID(READ_ONLY_OID_1), MOAccessImpl.ACCESS_READ_ONLY, new OctetString(READ_ONLY_OID_VALUE_1)),
DefaultMOFactory.getInstance().createScalar(new OID(READ_ONLY_OID_2), MOAccessImpl.ACCESS_READ_ONLY, new OctetString(READ_ONLY_OID_VALUE_2))
- );
+ );
}
}
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/GetSNMPTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/GetSNMPTest.java
index 27812559b8..8e6f7d4032 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/GetSNMPTest.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/GetSNMPTest.java
@@ -30,12 +30,12 @@ import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
-public class GetSNMPTest {
+class GetSNMPTest {
private static final String OID = "1.3.6.1.4.1.32437.1.5.1.4.2.0";
@Test
- public void testOnTriggerWithGetStrategyPerformsSnmpGet() {
+ void testOnTriggerWithGetStrategyPerformsSnmpGet() {
final TestRunner getSnmpTestRunner = new SNMPV1TestRunnerFactory().createSnmpGetTestRunner(NetworkUtils.getAvailableUdpPort(), OID, "GET");
final GetSNMP spyGetSNMP = spy((GetSNMP) getSnmpTestRunner.getProcessor());
final MockProcessSession mockProcessSession = new MockProcessSession(new SharedSessionState(spyGetSNMP, new AtomicLong(0L)), spyGetSNMP);
@@ -48,7 +48,7 @@ public class GetSNMPTest {
}
@Test
- public void testOnTriggerWithWalkStrategyPerformsSnmpWalk() {
+ void testOnTriggerWithWalkStrategyPerformsSnmpWalk() {
final TestRunner getSnmpTestRunner = new SNMPV1TestRunnerFactory().createSnmpGetTestRunner(NetworkUtils.getAvailableUdpPort(), OID, "WALK");
final GetSNMP spyGetSNMP = spy((GetSNMP) getSnmpTestRunner.getProcessor());
final MockProcessSession mockProcessSession = new MockProcessSession(new SharedSessionState(spyGetSNMP, new AtomicLong(0L)), spyGetSNMP);
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/SetSNMPIT.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/SetSNMPIT.java
index 951c1af939..5099c94d75 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/SetSNMPIT.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/SetSNMPIT.java
@@ -27,25 +27,22 @@ import org.apache.nifi.snmp.testagents.TestSNMPV3Agent;
import org.apache.nifi.snmp.utils.SNMPUtils;
import org.apache.nifi.util.MockFlowFile;
import org.apache.nifi.util.TestRunner;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.Arguments;
+import org.junit.jupiter.params.provider.MethodSource;
import org.snmp4j.agent.mo.DefaultMOFactory;
import org.snmp4j.agent.mo.MOAccessImpl;
import org.snmp4j.smi.OID;
import org.snmp4j.smi.OctetString;
import java.io.IOException;
-import java.util.Arrays;
-import java.util.Collection;
+import java.util.stream.Stream;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
+import static org.junit.jupiter.api.Assertions.fail;
-@RunWith(Parameterized.class)
-public class SetSNMPIT {
+class SetSNMPIT {
private static final String LOCALHOST = "127.0.0.1";
private static final String TEST_OID = "1.3.6.1.4.1.32437.1.5.1.4.2.0";
@@ -65,43 +62,31 @@ public class SetSNMPIT {
registerManagedObjects(v3TestAgent);
}
- @Parameterized.Parameters
- public static Collection<Object[]> data() {
- return Arrays.asList(new Object[][]{
- {v1TestAgent, v1TestRunnerFactory},
- {v2cTestAgent, v2cTestRunnerFactory},
- {v3TestAgent, v3TestRunnerFactory}
- });
- }
-
- private final TestAgent testAgent;
- private final SNMPTestRunnerFactory testRunnerFactory;
-
- public SetSNMPIT(final TestAgent testAgent, final SNMPTestRunnerFactory testRunnerFactory) {
- this.testAgent = testAgent;
- this.testRunnerFactory = testRunnerFactory;
+ private static Stream<Arguments> provideArguments() {
+ return Stream.of(
+ Arguments.of(v1TestAgent, v1TestRunnerFactory),
+ Arguments.of(v2cTestAgent, v2cTestRunnerFactory),
+ Arguments.of(v3TestAgent, v3TestRunnerFactory)
+ );
}
- @Before
- public void setUp() throws IOException {
+ @ParameterizedTest
+ @MethodSource("provideArguments")
+ void testSnmpSet(TestAgent testAgent, SNMPTestRunnerFactory testRunnerFactory) throws IOException {
testAgent.start();
- }
-
- @After
- public void tearDown() {
- testAgent.stop();
- testAgent.unregister();
- }
-
-
- @Test
- public void testSnmpSet() {
- final TestRunner runner = testRunnerFactory.createSnmpSetTestRunner(testAgent.getPort(), TEST_OID, TEST_OID_VALUE);
- runner.run();
- final MockFlowFile successFF = runner.getFlowFilesForRelationship(SetSNMP.REL_SUCCESS).get(0);
-
- assertNotNull(successFF);
- assertEquals(TEST_OID_VALUE, successFF.getAttribute(SNMPUtils.SNMP_PROP_PREFIX + TEST_OID + SNMPUtils.SNMP_PROP_DELIMITER + "4"));
+ try {
+ final TestRunner runner = testRunnerFactory.createSnmpSetTestRunner(testAgent.getPort(), TEST_OID, TEST_OID_VALUE);
+ runner.run();
+ final MockFlowFile successFF = runner.getFlowFilesForRelationship(SetSNMP.REL_SUCCESS).get(0);
+
+ assertNotNull(successFF);
+ assertEquals(TEST_OID_VALUE, successFF.getAttribute(SNMPUtils.SNMP_PROP_PREFIX + TEST_OID + SNMPUtils.SNMP_PROP_DELIMITER + "4"));
+ } catch (Exception e) {
+ fail(e);
+ } finally {
+ testAgent.stop();
+ testAgent.unregister();
+ }
}
private static void registerManagedObjects(final TestAgent agent) {
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/TrapSNMPIT.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/TrapSNMPIT.java
index 3762dcb8cd..031eb61535 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/TrapSNMPIT.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/processors/TrapSNMPIT.java
@@ -26,20 +26,20 @@ import org.apache.nifi.snmp.helper.testrunners.SNMPV2cTestRunnerFactory;
import org.apache.nifi.snmp.utils.SNMPUtils;
import org.apache.nifi.util.MockFlowFile;
import org.apache.nifi.util.TestRunner;
-import org.junit.Ignore;
-import org.junit.Test;
+import org.junit.jupiter.api.Disabled;
+import org.junit.jupiter.api.Test;
import org.snmp4j.mp.SnmpConstants;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
-public class TrapSNMPIT {
+class TrapSNMPIT {
protected static final String SYSTEM_DESCRIPTION_OID = "1.3.6.1.2.1.1.1.0";
protected static final String SYSTEM_DESCRIPTION_OID_VALUE = "optionalTrapOidTestValue";
@Test
- public void testSendReceiveV1Trap() throws InterruptedException {
+ void testSendReceiveV1Trap() throws InterruptedException {
final int listenPort = NetworkUtils.getAvailableUdpPort();
final V1TrapConfiguration v1TrapConfiguration = TrapConfigurationFactory.getV1TrapConfiguration();
@@ -71,7 +71,7 @@ public class TrapSNMPIT {
}
@Test
- public void testSendReceiveV2Trap() throws InterruptedException {
+ void testSendReceiveV2Trap() throws InterruptedException {
final int listenPort = NetworkUtils.getAvailableUdpPort();
final V2TrapConfiguration v2TrapConfiguration = TrapConfigurationFactory.getV2TrapConfiguration();
@@ -99,10 +99,10 @@ public class TrapSNMPIT {
listenTrapTestRunner.shutdown();
}
- @Ignore("The ListenTrapSNMP and SendTrapSNMP processors use the same SecurityProtocols instance" +
+ @Disabled("The ListenTrapSNMP and SendTrapSNMP processors use the same SecurityProtocols instance" +
" and same USM (the USM is stored in a map by version), hence this case shall be manually tested." +
" Check assertByVersion() to see what the trap payload must contain.")
@Test
- public void testReceiveV3Trap() {
+ void testReceiveV3Trap() {
}
}
diff --git a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/utils/SNMPUtilsTest.java b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/utils/SNMPUtilsTest.java
index eac3bf2745..1d87e73add 100644
--- a/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/utils/SNMPUtilsTest.java
+++ b/nifi-nar-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/utils/SNMPUtilsTest.java
@@ -26,13 +26,13 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
/**
* Test class for {@link SNMPUtils}.
*/
-public class SNMPUtilsTest {
+class SNMPUtilsTest {
/**
* Test for updating attributes of flow files with {@link PDU}
*/
@Test
- public void validateUpdateFlowFileAttributes() {
+ void validateUpdateFlowFileAttributes() {
final PDU pdu = new PDU();
pdu.setErrorIndex(0);
pdu.setErrorStatus(0);