From: John Keeney Date: Wed, 6 May 2020 16:37:19 +0000 (+0000) Subject: Merge "Added one typeless Policy in MockPolicyAgent" X-Git-Tag: 2.0.0~54 X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=commitdiff_plain;h=341ee94ee4d8995e03c7886c96f9250c7d3901fe;hp=c488e37b5803ca41d7b8feb4434cb570aae2cd43;p=nonrtric.git Merge "Added one typeless Policy in MockPolicyAgent" --- diff --git a/policy-agent/src/main/java/org/oransc/policyagent/clients/AsyncRestClient.java b/policy-agent/src/main/java/org/oransc/policyagent/clients/AsyncRestClient.java index 26d51528..750b074d 100644 --- a/policy-agent/src/main/java/org/oransc/policyagent/clients/AsyncRestClient.java +++ b/policy-agent/src/main/java/org/oransc/policyagent/clients/AsyncRestClient.java @@ -196,8 +196,8 @@ public class AsyncRestClient { .option(ChannelOption.CONNECT_TIMEOUT_MILLIS, 10_000) // .secure(c -> c.sslContext(sslContext)) // .doOnConnected(connection -> { - connection.addHandler(new ReadTimeoutHandler(30)); - connection.addHandler(new WriteTimeoutHandler(30)); + connection.addHandlerLast(new ReadTimeoutHandler(30)); + connection.addHandlerLast(new WriteTimeoutHandler(30)); }); HttpClient httpClient = HttpClient.from(tcpClient); ReactorClientHttpConnector connector = new ReactorClientHttpConnector(httpClient); diff --git a/policy-agent/src/test/java/org/oransc/policyagent/MockPolicyAgent.java b/policy-agent/src/test/java/org/oransc/policyagent/MockPolicyAgent.java index cdf614c2..7bdd7968 100644 --- a/policy-agent/src/test/java/org/oransc/policyagent/MockPolicyAgent.java +++ b/policy-agent/src/test/java/org/oransc/policyagent/MockPolicyAgent.java @@ -31,10 +31,13 @@ import java.nio.file.Files; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; import org.oransc.policyagent.configuration.ApplicationConfig; +import org.oransc.policyagent.repository.ImmutablePolicy; import org.oransc.policyagent.repository.ImmutablePolicyType; import org.oransc.policyagent.repository.Policies; +import org.oransc.policyagent.repository.Policy; import org.oransc.policyagent.repository.PolicyType; import org.oransc.policyagent.repository.PolicyTypes; +import org.oransc.policyagent.repository.Ric; import org.oransc.policyagent.repository.Rics; import org.oransc.policyagent.utils.MockA1ClientFactory; import org.slf4j.Logger; @@ -55,6 +58,12 @@ public class MockPolicyAgent { @Autowired Rics rics; + @Autowired + Policies policies; + + @Autowired + PolicyTypes policyTypes; + static class MockApplicationConfig extends ApplicationConfig { @Override public String getLocalConfigurationFilePath() { @@ -101,10 +110,7 @@ public class MockPolicyAgent { } private static File[] getResourceFolderFiles(String folder) { - ClassLoader loader = Thread.currentThread().getContextClassLoader(); - URL url = loader.getResource(folder); - String path = url.getPath(); - return new File(path).listFiles(); + return getFile(folder).listFiles(); } private static String readFile(File file) throws IOException { @@ -127,11 +133,19 @@ public class MockPolicyAgent { } } + private static File getFile(String path) { + ClassLoader loader = Thread.currentThread().getContextClassLoader(); + URL url = loader.getResource(path); + return new File(url.getPath()); + } + @LocalServerPort private int port; - private void keepServerAlive() throws InterruptedException { + private void keepServerAlive() throws InterruptedException, IOException { logger.info("Keeping server alive!"); + Thread.sleep(1000); + loadInstances(); synchronized (this) { this.wait(); } @@ -143,6 +157,23 @@ public class MockPolicyAgent { return title; } + private void loadInstances() throws IOException { + PolicyType unnamedPolicyType = policyTypes.get(""); + Ric ric = rics.get("ric1"); + File jsonFile = getFile("test_application_configuration.json"); + String json = new String(Files.readAllBytes(jsonFile.toPath())); + + Policy policy = ImmutablePolicy.builder() // + .id("typelessPolicy") // + .json(json) // + .ownerServiceName("MockPolicyAgent") // + .ric(ric) // + .type(unnamedPolicyType) // + .lastModified("now") // + .build(); + this.policies.put(policy); + } + @Test @SuppressWarnings("squid:S2699") // Tests should include assertions. This test is only for keeping the server // alive,