import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.core.read.ListAppender;
+
import java.time.Duration;
import java.util.Collections;
+
import org.awaitility.Durations;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import reactor.core.publisher.Mono;
@ExtendWith(MockitoExtension.class)
-public class ServiceSupervisionTest {
+class ServiceSupervisionTest {
private static final String SERVICE_NAME = "Service name";
private static final String RIC_NAME = "name";
.name(RIC_NAME) //
.baseUrl("baseUrl") //
.managedElementIds(Collections.emptyList()) //
+ .controllerName("") //
.build();
private Ric ric = new Ric(ricConfig);
private PolicyType policyType = ImmutablePolicyType.builder() //
.ric(ric) //
.type(policyType) //
.lastModified("lastModified") //
+ .isTransient(false) //
.build();
@Test
- public void serviceExpired_policyAndServiceAreDeletedInRepoAndPolicyIsDeletedInRic() {
+ void serviceExpired_policyAndServiceAreDeletedInRepoAndPolicyIsDeletedInRic() {
setUpRepositoryWithKeepAliveInterval(Duration.ofSeconds(2));
setUpCreationOfA1Client();
await().atMost(Durations.FIVE_SECONDS).with().pollInterval(Durations.ONE_SECOND).until(service::isExpired);
- serviceSupervisionUnderTest.checkAllServices();
+ serviceSupervisionUnderTest.checkAllServices().blockLast();
assertThat(policies.size()).isEqualTo(0);
assertThat(services.size()).isEqualTo(0);
}
@Test
- public void serviceExpiredButDeleteInRicFails_policyAndServiceAreDeletedInRepoAndErrorLoggedForRic() {
+ void serviceExpiredButDeleteInRicFails_policyAndServiceAreDeletedInRepoAndErrorLoggedForRic() {
setUpRepositoryWithKeepAliveInterval(Duration.ofSeconds(2));
setUpCreationOfA1Client();
final ListAppender<ILoggingEvent> logAppender = LoggingUtils.getLogListAppender(ServiceSupervision.class, WARN);
- serviceSupervisionUnderTest.checkAllServices();
+ serviceSupervisionUnderTest.checkAllServices().blockLast();
assertThat(policies.size()).isEqualTo(0);
assertThat(services.size()).isEqualTo(0);
ILoggingEvent loggingEvent = logAppender.list.get(0);
- assertThat(loggingEvent.getThrowableProxy().getMessage()).isEqualTo(originalErrorMessage);
- String expectedLogMessage = "Could not delete policy: " + POLICY_ID + " from ric: " + RIC_NAME;
- assertThat(loggingEvent.toString().contains(expectedLogMessage)).isTrue();
+ assertThat(loggingEvent.getLevel()).isEqualTo(WARN);
+ String expectedLogMessage =
+ "Could not delete policy: " + POLICY_ID + " from ric: " + RIC_NAME + ". Cause: " + originalErrorMessage;
+ assertThat(loggingEvent.getFormattedMessage()).isEqualTo(expectedLogMessage);
}
@Test
- public void serviceNotExpired_shouldNotBeChecked() {
+ void serviceNotExpired_shouldNotBeChecked() {
setUpRepositoryWithKeepAliveInterval(Duration.ofSeconds(2));
ServiceSupervision serviceSupervisionUnderTest =
new ServiceSupervision(services, policies, a1ClientFactoryMock);
- serviceSupervisionUnderTest.checkAllServices();
+ serviceSupervisionUnderTest.checkAllServices().blockLast();
assertThat(policies.size()).isEqualTo(1);
assertThat(services.size()).isEqualTo(1);
}
@Test
- public void serviceWithoutKeepAliveInterval_shouldNotBeChecked() {
+ void serviceWithoutKeepAliveInterval_shouldNotBeChecked() {
setUpRepositoryWithKeepAliveInterval(Duration.ofSeconds(0));
ServiceSupervision serviceSupervisionUnderTest =
new ServiceSupervision(services, policies, a1ClientFactoryMock);
- serviceSupervisionUnderTest.checkAllServices();
+ serviceSupervisionUnderTest.checkAllServices().blockLast();
assertThat(policies.size()).isEqualTo(1);
assertThat(services.size()).isEqualTo(1);