aboutsummaryrefslogtreecommitdiffstats
path: root/policy-endpoints/src/test/java/org/onap/policy/common/endpoints/event/comm/bus/internal/TopicBaseTest.java
diff options
context:
space:
mode:
authorJorge Hernandez <jorge.hernandez-herrero@att.com>2019-02-19 20:05:31 -0600
committerJorge Hernandez <jorge.hernandez-herrero@att.com>2019-02-21 11:01:09 -0600
commit4c1c6891ed6cd4a9e5c2e0b3bacd0c2df89364a7 (patch)
tree36d229cab77b42d3c2504ce7ebe1f94d656e94da /policy-endpoints/src/test/java/org/onap/policy/common/endpoints/event/comm/bus/internal/TopicBaseTest.java
parent2917a67f12e32a7337e3a9f9b9fd3de4469a921c (diff)
Support for lab contextual topic names.
This work allows a drools application, with its drl template to refer to the topic name by its invariable canonical name, ie. POLICY-CL-MGT. Since the drl is a design time artifact, it is desired to know topics by its canonical non-changeable name. The actual per lab environment topic name may change on a per deployment basis, for example POLICY-CL-MGT-WINDRIVER or POLICY-CL-MGT-TLAB. The template can still use POLICY-CL-MGT without modification but the actual installation configuration would use the "effectiveTopic" property to point to the right topic on a per lab basis. This also helps with installation (long story) since the canonical topics will be known ahead of time. Change-Id: I8322bf7e427569c37a76eea5ce6d5b9547cb2ff3 Issue-ID: POLICY-1534 Signed-off-by: Jorge Hernandez <jorge.hernandez-herrero@att.com>
Diffstat (limited to 'policy-endpoints/src/test/java/org/onap/policy/common/endpoints/event/comm/bus/internal/TopicBaseTest.java')
-rw-r--r--policy-endpoints/src/test/java/org/onap/policy/common/endpoints/event/comm/bus/internal/TopicBaseTest.java40
1 files changed, 39 insertions, 1 deletions
diff --git a/policy-endpoints/src/test/java/org/onap/policy/common/endpoints/event/comm/bus/internal/TopicBaseTest.java b/policy-endpoints/src/test/java/org/onap/policy/common/endpoints/event/comm/bus/internal/TopicBaseTest.java
index a8ea84fc..55b2b404 100644
--- a/policy-endpoints/src/test/java/org/onap/policy/common/endpoints/event/comm/bus/internal/TopicBaseTest.java
+++ b/policy-endpoints/src/test/java/org/onap/policy/common/endpoints/event/comm/bus/internal/TopicBaseTest.java
@@ -1,6 +1,6 @@
/*
* ============LICENSE_START=======================================================
- * ONAP Policy Engine - Common Modules
+ * ONAP
* ================================================================================
* Copyright (C) 2018-2019 AT&T Intellectual Property. All rights reserved.
* ================================================================================
@@ -74,6 +74,27 @@ public class TopicBaseTest extends TopicTestBase {
}
@Test
+ public void testTopicBase_EffectiveTopic() {
+ TopicBase baseEf = new TopicBaseImpl(servers, MY_TOPIC, MY_EFFECTIVE_TOPIC);
+ assertEquals(MY_TOPIC, baseEf.getTopic());
+ assertEquals(MY_EFFECTIVE_TOPIC, baseEf.getEffectiveTopic());
+ }
+
+ @Test
+ public void testTopicBase_NullEffectiveTopic() {
+ TopicBase baseEf = new TopicBaseImpl(servers, MY_TOPIC, null);
+ assertEquals(MY_TOPIC, baseEf.getTopic());
+ assertEquals(MY_TOPIC, baseEf.getEffectiveTopic());
+ }
+
+ @Test
+ public void testTopicBase_EmptyEffectiveTopic() {
+ TopicBase baseEf = new TopicBaseImpl(servers, MY_TOPIC, "");
+ assertEquals(MY_TOPIC, baseEf.getTopic());
+ assertEquals(MY_TOPIC, baseEf.getEffectiveTopic());
+ }
+
+ @Test
public void testSerialize() {
new GsonTestUtils().compareGson(base, TopicBaseTest.class);
}
@@ -209,6 +230,12 @@ public class TopicBaseTest extends TopicTestBase {
}
@Test
+ public void testGetEffectiveTopic() {
+ assertEquals(MY_TOPIC, base.getTopic());
+ assertEquals(MY_TOPIC, base.getEffectiveTopic());
+ }
+
+ @Test
public void testIsAlive() {
assertFalse(base.isAlive());
base.start();
@@ -260,6 +287,17 @@ public class TopicBaseTest extends TopicTestBase {
super(servers, topic);
}
+ /**
+ * Constructor.
+ *
+ * @param servers list of servers
+ * @param topic topic name
+ * @param effectiveTopic effective topic name for network communication
+ */
+ public TopicBaseImpl(List<String> servers, String topic, String effectiveTopic) {
+ super(servers, topic, effectiveTopic);
+ }
+
@Override
public CommInfrastructure getTopicCommInfrastructure() {
return CommInfrastructure.NOOP;