aboutsummaryrefslogtreecommitdiffstats
path: root/ONAP-REST/src/test/java/org/onap/policy/rest/util/PolicyItemSetChangeNotifierTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'ONAP-REST/src/test/java/org/onap/policy/rest/util/PolicyItemSetChangeNotifierTest.java')
-rw-r--r--ONAP-REST/src/test/java/org/onap/policy/rest/util/PolicyItemSetChangeNotifierTest.java69
1 files changed, 48 insertions, 21 deletions
diff --git a/ONAP-REST/src/test/java/org/onap/policy/rest/util/PolicyItemSetChangeNotifierTest.java b/ONAP-REST/src/test/java/org/onap/policy/rest/util/PolicyItemSetChangeNotifierTest.java
index 9e5ff5d9f..5e42ec6f6 100644
--- a/ONAP-REST/src/test/java/org/onap/policy/rest/util/PolicyItemSetChangeNotifierTest.java
+++ b/ONAP-REST/src/test/java/org/onap/policy/rest/util/PolicyItemSetChangeNotifierTest.java
@@ -3,13 +3,14 @@
* ONAP Policy Engine
* ================================================================================
* Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved.
+ * Modifications Copyright (C) 2019 Nordix Foundation.
* ================================================================================
* 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.
@@ -20,31 +21,57 @@
package org.onap.policy.rest.util;
+import static org.assertj.core.api.Assertions.assertThatCode;
+import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.fail;
+
import org.junit.Test;
import org.mockito.Mockito;
import org.onap.policy.rest.util.PolicyContainer.ItemSetChangeEvent;
import org.onap.policy.rest.util.PolicyContainer.ItemSetChangeListener;
public class PolicyItemSetChangeNotifierTest {
- @Test
- public void testNotifier() {
- // Setup test data
- ItemSetChangeListener listener = Mockito.mock(ItemSetChangeListener.class);
- ItemSetChangeEvent event = Mockito.mock(ItemSetChangeEvent.class);
-
- // Test constructor
- PolicyItemSetChangeNotifier notifier = new PolicyItemSetChangeNotifier();
- assertNotNull(notifier);
-
- // Test listener methods
- try {
- notifier.addItemSetChangeListener(listener);
- notifier.fireItemSetChange(event);
- notifier.removeItemSetChangeListener(listener);
- } catch (Exception ex) {
- fail("Not expecting any exceptions: " + ex);
+ @Test
+ public void testNotifier() {
+
+ // Test constructor
+ PolicyItemSetChangeNotifier notifier = new PolicyItemSetChangeNotifier();
+ assertNotNull(notifier);
+
+ assertEquals(null, notifier.getItemSetChangeListeners());
+
+ ItemSetChangeListener listener1 = Mockito.mock(ItemSetChangeListener.class);
+ notifier.addItemSetChangeListener(listener1);
+ assertEquals(1, notifier.getItemSetChangeListeners().size());
+ ItemSetChangeListener listener2 = Mockito.mock(ItemSetChangeListener.class);
+ notifier.addItemSetChangeListener(listener2);
+ assertEquals(2, notifier.getItemSetChangeListeners().size());
+
+ notifier.removeItemSetChangeListener(listener1);
+ assertEquals(1, notifier.getItemSetChangeListeners().size());
+ notifier.addItemSetChangeListener(listener1);
+ assertEquals(2, notifier.getItemSetChangeListeners().size());
+
+ ItemSetChangeEvent event = Mockito.mock(ItemSetChangeEvent.class);
+ notifier.fireItemSetChange(event);
+
+ notifier.removeItemSetChangeListener(listener1);
+ assertEquals(1, notifier.getItemSetChangeListeners().size());
+ notifier.removeItemSetChangeListener(listener2);
+ assertEquals(0, notifier.getItemSetChangeListeners().size());
+ notifier.removeItemSetChangeListener(listener2);
+ assertEquals(0, notifier.getItemSetChangeListeners().size());
+
+ notifier.setItemSetChangeListeners(null);
+ notifier.removeItemSetChangeListener(listener2);
+ assertEquals(null, notifier.getItemSetChangeListeners());
+
+ assertThatCode(() -> notifier.fireItemSetChange(event)).doesNotThrowAnyException();
+
+ notifier.setContainer(new DummyPolicyContainer());
+ assertThatCode(() -> notifier.fireItemSetChange()).doesNotThrowAnyException();
+
+ PolicyContainer dummySource = new DummyPolicyContainer();
+ assertEquals(dummySource, new PolicyItemSetChangeNotifier.BaseItemSetChangeEvent(dummySource).getContainer());
}
- }
}