summaryrefslogtreecommitdiffstats
path: root/engine-d/src/test/java
diff options
context:
space:
mode:
authorGuangrong Fu <fu.guangrong@zte.com.cn>2021-12-01 14:24:40 +0800
committerGuangrong Fu <fu.guangrong@zte.com.cn>2021-12-01 14:24:40 +0800
commit11af2e24c981b080c2df3ecbf9574dbef56c47dc (patch)
tree31ff7ab35e5fcba11c17e328f44210ab4f002082 /engine-d/src/test/java
parent97afdabeb7d1f2095f3fa170f0f78fb366c91644 (diff)
Change rule retrieval from CBS to ConfigMap
Issue-ID: HOLMES-488 Signed-off-by: Guangrong Fu <fu.guangrong@zte.com.cn> Change-Id: Ia2c29489b37feb729940ee807471ae448c1911cc
Diffstat (limited to 'engine-d/src/test/java')
-rw-r--r--engine-d/src/test/java/org/onap/holmes/engine/dcae/ConfigFileScanningTaskTest.java82
1 files changed, 82 insertions, 0 deletions
diff --git a/engine-d/src/test/java/org/onap/holmes/engine/dcae/ConfigFileScanningTaskTest.java b/engine-d/src/test/java/org/onap/holmes/engine/dcae/ConfigFileScanningTaskTest.java
new file mode 100644
index 0000000..b663133
--- /dev/null
+++ b/engine-d/src/test/java/org/onap/holmes/engine/dcae/ConfigFileScanningTaskTest.java
@@ -0,0 +1,82 @@
+/**
+ * Copyright 2021 ZTE Corporation.
+ * <p>
+ * 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
+ * <p>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p>
+ * 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.
+ */
+
+package org.onap.holmes.engine.dcae;
+
+import org.easymock.EasyMock;
+import org.glassfish.hk2.api.ServiceLocator;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.onap.holmes.common.dcae.DcaeConfigurationsCache;
+import org.onap.holmes.common.dropwizard.ioc.utils.ServiceLocatorHolder;
+import org.onap.holmes.dsa.dmaappolling.DMaaPResponseUtil;
+import org.onap.holmes.dsa.dmaappolling.Subscriber;
+import org.onap.holmes.engine.dmaap.SubscriberAction;
+import org.powermock.api.easymock.PowerMock;
+import org.powermock.modules.junit4.PowerMockRunner;
+import org.powermock.reflect.Whitebox;
+
+import static org.hamcrest.core.IsEqual.equalTo;
+import static org.junit.Assert.assertThat;
+
+@RunWith(PowerMockRunner.class)
+public class ConfigFileScanningTaskTest {
+
+ @Test
+ public void run() {
+ ServiceLocator mockedSl = PowerMock.createMock(ServiceLocator.class);
+ SubscriberAction mockedSa = PowerMock.createMock(SubscriberAction.class);
+ ServiceLocatorHolder.setLocator(mockedSl);
+ EasyMock.expect(mockedSl.getService(SubscriberAction.class)).andReturn(mockedSa);
+ // This is invoked while executing new Subscriber().
+ EasyMock.expect(mockedSl.getService(DMaaPResponseUtil.class)).andReturn(new DMaaPResponseUtil());
+ mockedSa.addSubscriber(EasyMock.anyObject(Subscriber.class));
+ EasyMock.expectLastCall();
+
+ ConfigFileScanningTask cfst = new ConfigFileScanningTask(null);
+ String configFilePath = ConfigFileScanningTaskTest.class.getResource("/cfy.json").getFile();
+ Whitebox.setInternalState(cfst, "configFile", configFilePath);
+
+ PowerMock.replayAll();
+ cfst.run();
+ PowerMock.verifyAll();
+
+ assertThat(DcaeConfigurationsCache.getPubSecInfo("dcae_cl_out").getDmaapInfo().getTopicUrl(),
+ equalTo("http://message-router.onap:3904/events/unauthenticated.DCAE_CL_OUTPUT"));
+ }
+
+ @Test
+ public void run_config_not_changed() {
+ ServiceLocator mockedSl = PowerMock.createMock(ServiceLocator.class);
+ SubscriberAction mockedSa = PowerMock.createMock(SubscriberAction.class);
+ ServiceLocatorHolder.setLocator(mockedSl);
+ // mocked objects will be only used once
+ EasyMock.expect(mockedSl.getService(SubscriberAction.class)).andReturn(mockedSa);
+ // This is invoked while executing new Subscriber().
+ EasyMock.expect(mockedSl.getService(DMaaPResponseUtil.class)).andReturn(new DMaaPResponseUtil());
+ mockedSa.addSubscriber(EasyMock.anyObject(Subscriber.class));
+ EasyMock.expectLastCall();
+
+ ConfigFileScanningTask cfst = new ConfigFileScanningTask(null);
+ String configFilePath = ConfigFileScanningTaskTest.class.getResource("/cfy.json").getFile();
+ Whitebox.setInternalState(cfst, "configFile", configFilePath);
+
+ PowerMock.replayAll();
+ cfst.run();
+ cfst.run();
+ PowerMock.verifyAll();
+ }
+} \ No newline at end of file