X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=policy-agent%2Fsrc%2Ftest%2Fjava%2Forg%2Foransc%2Fpolicyagent%2Ftasks%2FRicSynchronizationTaskTest.java;h=6667029a059f998a95e7025db25e2c2214459e47;hb=1178fb45f6d79fb3988b2806073aeeee3d68324e;hp=788253c8149cfa3a2283cbb0e26ec3d46314e9b7;hpb=254eab2d525ad00ac092d6859d21cbab8e42746a;p=nonrtric.git diff --git a/policy-agent/src/test/java/org/oransc/policyagent/tasks/RicSynchronizationTaskTest.java b/policy-agent/src/test/java/org/oransc/policyagent/tasks/RicSynchronizationTaskTest.java index 788253c8..6667029a 100644 --- a/policy-agent/src/test/java/org/oransc/policyagent/tasks/RicSynchronizationTaskTest.java +++ b/policy-agent/src/test/java/org/oransc/policyagent/tasks/RicSynchronizationTaskTest.java @@ -65,7 +65,7 @@ import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; @ExtendWith(MockitoExtension.class) -public class RicSynchronizationTaskTest { +class RicSynchronizationTaskTest { private static final String POLICY_TYPE_1_NAME = "type1"; private static final PolicyType POLICY_TYPE_1 = ImmutablePolicyType.builder() // .name(POLICY_TYPE_1_NAME) // @@ -80,14 +80,19 @@ public class RicSynchronizationTaskTest { .controllerName("controllerName") // .build()); - private static final Policy POLICY_1 = ImmutablePolicy.builder() // - .id("policyId1") // - .json("") // - .ownerServiceName("service") // - .ric(RIC_1) // - .type(POLICY_TYPE_1) // - .lastModified("now") // - .build(); + private static Policy createPolicy(String policyId, boolean isTransient) { + return ImmutablePolicy.builder() // + .id(policyId) // + .json("") // + .ownerServiceName("service") // + .ric(RIC_1) // + .type(POLICY_TYPE_1) // + .lastModified("now") // + .isTransient(isTransient) // + .build(); + } + + private static final Policy POLICY_1 = createPolicy("policyId1", false); private static final String SERVICE_1_NAME = "service1"; private static final String SERVICE_1_CALLBACK_URL = "callbackUrl"; @@ -104,16 +109,16 @@ public class RicSynchronizationTaskTest { private Services services; @BeforeEach - public void init() { + void init() { policyTypes = new PolicyTypes(); policies = new Policies(); services = new Services(); - RIC_1.setState(RicState.UNDEFINED); + RIC_1.setState(RicState.UNAVAILABLE); RIC_1.clearSupportedPolicyTypes(); } @Test - public void ricAlreadySynchronizing_thenNoSynchronization() { + void ricAlreadySynchronizing_thenNoSynchronization() { RIC_1.setState(RicState.SYNCHRONIZING); RIC_1.addSupportedPolicyType(POLICY_TYPE_1); @@ -130,12 +135,12 @@ public class RicSynchronizationTaskTest { assertThat(policyTypes.size()).isEqualTo(1); assertThat(policies.size()).isEqualTo(1); assertThat(RIC_1.getState()).isEqualTo(RicState.SYNCHRONIZING); - assertThat(RIC_1.getSupportedPolicyTypeNames().size()).isEqualTo(1); + assertThat(RIC_1.getSupportedPolicyTypeNames()).hasSize(1); } @Test - public void ricIdlePolicyTypeInRepo_thenSynchronizationWithReuseOfTypeFromRepoAndCorrectServiceNotified() { - RIC_1.setState(RicState.IDLE); + void ricIdlePolicyTypeInRepo_thenSynchronizationWithReuseOfTypeFromRepoAndCorrectServiceNotified() { + RIC_1.setState(RicState.AVAILABLE); policyTypes.put(POLICY_TYPE_1); @@ -165,13 +170,13 @@ public class RicSynchronizationTaskTest { verifyNoMoreInteractions(restClientMock); assertThat(policyTypes.size()).isEqualTo(1); - assertThat(policies.size()).isEqualTo(0); - assertThat(RIC_1.getState()).isEqualTo(RicState.IDLE); + assertThat(policies.size()).isZero(); + assertThat(RIC_1.getState()).isEqualTo(RicState.AVAILABLE); } @Test - public void ricIdlePolicyTypeNotInRepo_thenSynchronizationWithTypeFromRic() throws Exception { - RIC_1.setState(RicState.IDLE); + void ricIdlePolicyTypeNotInRepo_thenSynchronizationWithTypeFromRic() throws Exception { + RIC_1.setState(RicState.AVAILABLE); setUpCreationOfA1Client(); simulateRicWithOnePolicyType(); @@ -188,14 +193,17 @@ public class RicSynchronizationTaskTest { assertThat(policyTypes.size()).isEqualTo(1); assertThat(policyTypes.getType(POLICY_TYPE_1_NAME).schema()).isEqualTo(typeSchema); - assertThat(policies.size()).isEqualTo(0); - assertThat(RIC_1.getState()).isEqualTo(RicState.IDLE); + assertThat(policies.size()).isZero(); + assertThat(RIC_1.getState()).isEqualTo(RicState.AVAILABLE); } @Test - public void ricIdleAndHavePolicies_thenSynchronizationWithRecreationOfPolicies() { - RIC_1.setState(RicState.IDLE); + void ricIdleAndHavePolicies_thenSynchronizationWithRecreationOfPolicies() { + RIC_1.setState(RicState.AVAILABLE); + Policy transientPolicy = createPolicy("transientPolicyId", true); + + policies.put(transientPolicy); policies.put(POLICY_1); setUpCreationOfA1Client(); @@ -213,14 +221,14 @@ public class RicSynchronizationTaskTest { verify(a1ClientMock).putPolicy(POLICY_1); verifyNoMoreInteractions(a1ClientMock); - assertThat(policyTypes.size()).isEqualTo(0); - assertThat(policies.size()).isEqualTo(1); - assertThat(RIC_1.getState()).isEqualTo(RicState.IDLE); + assertThat(policyTypes.size()).isZero(); + assertThat(policies.size()).isEqualTo(1); // The transient policy shall be deleted + assertThat(RIC_1.getState()).isEqualTo(RicState.AVAILABLE); } @Test - public void ricIdleAndErrorDeletingPoliciesFirstTime_thenSynchronizationWithDeletionOfPolicies() { - RIC_1.setState(RicState.IDLE); + void ricIdleAndErrorDeletingPoliciesFirstTime_thenSynchronizationWithDeletionOfPolicies() { + RIC_1.setState(RicState.AVAILABLE); policies.put(POLICY_1); @@ -239,14 +247,14 @@ public class RicSynchronizationTaskTest { verify(a1ClientMock, times(2)).deleteAllPolicies(); verifyNoMoreInteractions(a1ClientMock); - assertThat(policyTypes.size()).isEqualTo(0); - assertThat(policies.size()).isEqualTo(0); - assertThat(RIC_1.getState()).isEqualTo(RicState.IDLE); + assertThat(policyTypes.size()).isZero(); + assertThat(policies.size()).isZero(); + assertThat(RIC_1.getState()).isEqualTo(RicState.AVAILABLE); } @Test - public void ricIdleAndErrorDeletingPoliciesAllTheTime_thenSynchronizationWithFailedRecovery() { - RIC_1.setState(RicState.IDLE); + void ricIdleAndErrorDeletingPoliciesAllTheTime_thenSynchronizationWithFailedRecovery() { + RIC_1.setState(RicState.AVAILABLE); policies.put(POLICY_1); @@ -265,19 +273,19 @@ public class RicSynchronizationTaskTest { synchronizerUnderTest.run(RIC_1); verifyCorrectLogMessage(0, logAppender, - "Recreation of policies failed for ric: " + RIC_1_NAME + ", reason: " + originalErrorMessage); + "Synchronization failure for ric: " + RIC_1_NAME + ", reason: " + originalErrorMessage); verify(a1ClientMock, times(2)).deleteAllPolicies(); verifyNoMoreInteractions(a1ClientMock); - assertThat(policyTypes.size()).isEqualTo(0); - assertThat(policies.size()).isEqualTo(0); - assertThat(RIC_1.getState()).isEqualTo(RicState.UNDEFINED); + assertThat(policyTypes.size()).isZero(); + assertThat(policies.size()).isZero(); + assertThat(RIC_1.getState()).isEqualTo(RicState.UNAVAILABLE); } @Test - public void ricIdlePolicyTypeInRepo_thenSynchronizationWithErrorOnServiceNotificationErrorLogged() { - RIC_1.setState(RicState.IDLE); + void ricIdlePolicyTypeInRepo_thenSynchronizationWithErrorOnServiceNotificationErrorLogged() { + RIC_1.setState(RicState.AVAILABLE); policyTypes.put(POLICY_TYPE_1); @@ -299,8 +307,9 @@ public class RicSynchronizationTaskTest { synchronizerUnderTest.run(RIC_1); ILoggingEvent loggingEvent = logAppender.list.get(0); - assertThat(loggingEvent.getThrowableProxy().getMessage()).isEqualTo(originalErrorMessage); - verifyCorrectLogMessage(0, logAppender, "Service notification failed for service: " + SERVICE_1_NAME); + assertThat(loggingEvent.getLevel()).isEqualTo(WARN); + verifyCorrectLogMessage(0, logAppender, + "Service notification failed for service: " + SERVICE_1_NAME + ". Cause: " + originalErrorMessage); } private void setUpCreationOfA1Client() { @@ -325,6 +334,6 @@ public class RicSynchronizationTaskTest { private void verifyCorrectLogMessage(int messageIndex, ListAppender logAppender, String expectedMessage) { ILoggingEvent loggingEvent = logAppender.list.get(messageIndex); - assertThat(loggingEvent.toString().contains(expectedMessage)).isTrue(); + assertThat(loggingEvent.getFormattedMessage()).isEqualTo(expectedMessage); } }