aboutsummaryrefslogtreecommitdiffstats
path: root/controlloop/common/msb/src/test
diff options
context:
space:
mode:
Diffstat (limited to 'controlloop/common/msb/src/test')
-rw-r--r--controlloop/common/msb/src/test/java/org/onap/policy/msb/client/MSBServiceExceptionTest.java30
-rw-r--r--controlloop/common/msb/src/test/java/org/onap/policy/msb/client/MSBServiceManagerTest.java40
-rw-r--r--controlloop/common/msb/src/test/java/org/onap/policy/msb/client/NodeTest.java62
-rw-r--r--controlloop/common/msb/src/test/resources/msbPropertyFile.properties2
4 files changed, 134 insertions, 0 deletions
diff --git a/controlloop/common/msb/src/test/java/org/onap/policy/msb/client/MSBServiceExceptionTest.java b/controlloop/common/msb/src/test/java/org/onap/policy/msb/client/MSBServiceExceptionTest.java
new file mode 100644
index 000000000..80c453eff
--- /dev/null
+++ b/controlloop/common/msb/src/test/java/org/onap/policy/msb/client/MSBServiceExceptionTest.java
@@ -0,0 +1,30 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * Copyright (C) 2018 Ericsson. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+package org.onap.policy.msb.client;
+
+import org.junit.Test;
+import org.onap.policy.common.utils.test.ExceptionsTester;
+
+public class MSBServiceExceptionTest extends ExceptionsTester{
+
+ @Test
+ public void test() throws Exception {
+ test(MSBServiceException.class);
+ }
+
+}
diff --git a/controlloop/common/msb/src/test/java/org/onap/policy/msb/client/MSBServiceManagerTest.java b/controlloop/common/msb/src/test/java/org/onap/policy/msb/client/MSBServiceManagerTest.java
index 9ab54f7ea..771bb4921 100644
--- a/controlloop/common/msb/src/test/java/org/onap/policy/msb/client/MSBServiceManagerTest.java
+++ b/controlloop/common/msb/src/test/java/org/onap/policy/msb/client/MSBServiceManagerTest.java
@@ -14,6 +14,7 @@
package org.onap.policy.msb.client;
import org.junit.*;
+import org.junit.rules.ExpectedException;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.onap.msb.sdk.discovery.common.RouteException;
@@ -23,11 +24,14 @@ import org.onap.msb.sdk.httpclient.msb.MSBServiceClient;
import org.onap.policy.msb.client.MSBServiceManager;
import org.onap.policy.msb.client.Node;
+import java.io.IOException;
+import java.lang.reflect.Field;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.HashSet;
import java.util.Set;
+import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
@@ -36,6 +40,9 @@ import static org.mockito.Mockito.when;
public class MSBServiceManagerTest {
@Mock
private MSBServiceClient msbClient;
+
+ @Rule
+ public ExpectedException expectedException = ExpectedException.none();
private MSBServiceManager msbManager;
@@ -101,6 +108,39 @@ public class MSBServiceManagerTest {
assertTrue(node.getIp() == null);
assertTrue(node.getPort() == null);
}
+
+ @Test
+ public void testReadMsbPolicyProperites_noPropertyFileSpecifed_throwsException() throws MSBServiceException, IOException {
+ expectedException.expect(MSBServiceException.class);
+ expectedException.expectMessage("No msb.policy.properties specified.");
+ System.clearProperty("msb.policy.properties");
+ msbManager = new MSBServiceManager();
+ }
+
+ @Test
+ public void testReadMsbPolicyProperites_propertyFileDoesNotExist_throwsException() throws MSBServiceException, IOException {
+ expectedException.expect(MSBServiceException.class);
+ expectedException.expectMessage("No msb.policy.properties specified.");
+ System.setProperty("msb.policy.properties", "nonExistingPropertyFile.txt");
+ msbManager = new MSBServiceManager();
+ System.clearProperty("msb.policy.properties");
+ }
+
+ @Test
+ public void testReadMsbPolicyProperites_propertyFileExists() throws MSBServiceException, IOException, NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException {
+ System.setProperty("msb.policy.properties", "src/test/resources/msbPropertyFile.properties");
+ msbManager = new MSBServiceManager();
+ System.clearProperty("msb.policy.properties");
+
+ Field factoryField = msbManager.getClass().getDeclaredField("factory");
+ factoryField.setAccessible(true);
+ MSBServiceFactory msbServiceFactory = (MSBServiceFactory) factoryField.get(msbManager);
+
+ Field msbClientField = msbServiceFactory.getClass().getDeclaredField("msbClient");
+ msbClientField.setAccessible(true);
+ MSBServiceClient msbClient = (MSBServiceClient) msbClientField.get(msbServiceFactory);
+ assertEquals("127.0.0.1:20", msbClient.getMsbSvrAddress());
+ }
public static MicroServiceFullInfo build(String ip,String port){
MicroServiceFullInfo serviceInfo = new MicroServiceFullInfo();
diff --git a/controlloop/common/msb/src/test/java/org/onap/policy/msb/client/NodeTest.java b/controlloop/common/msb/src/test/java/org/onap/policy/msb/client/NodeTest.java
new file mode 100644
index 000000000..ed1d55f2c
--- /dev/null
+++ b/controlloop/common/msb/src/test/java/org/onap/policy/msb/client/NodeTest.java
@@ -0,0 +1,62 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * Copyright (C) 2018 Ericsson. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+package org.onap.policy.msb.client;
+
+import static org.junit.Assert.*;
+
+import org.junit.Test;
+
+public class NodeTest {
+
+ @Test
+ public void testSetAndGetName() {
+ Node node = new Node();
+ final String name = "myName";
+ node.setName(name);
+ assertEquals(name, node.getName());
+ }
+
+ @Test
+ public void testSetAndGetIp() {
+ Node node = new Node();
+ final String ip = "127.0.0.1";
+ node.setIp(ip);
+ assertEquals(ip, node.getIp());
+ }
+
+ @Test
+ public void testSetAndGetPort() {
+ Node node = new Node();
+ final String port = "1001";
+ node.setPort(port);
+ assertEquals(port, node.getPort());
+ }
+
+ @Test
+ public void testToString() {
+ Node node = new Node();
+ final String name = "myName";
+ final String ip = "127.0.0.1";
+ final String port = "1001";
+ node.setName(name);
+ node.setIp(ip);
+ node.setPort(port);
+ assertEquals("Node{name='myName', ip='127.0.0.1', port='1001'}", node.toString());
+ }
+
+}
diff --git a/controlloop/common/msb/src/test/resources/msbPropertyFile.properties b/controlloop/common/msb/src/test/resources/msbPropertyFile.properties
new file mode 100644
index 000000000..98666e201
--- /dev/null
+++ b/controlloop/common/msb/src/test/resources/msbPropertyFile.properties
@@ -0,0 +1,2 @@
+msb.ip=127.0.0.1
+msb.port=20 \ No newline at end of file