2 * ============LICENSE_START=======================================================
3 * Copyright (C) 2018 Ericsson. All rights reserved.
4 * ================================================================================
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
9 * http://www.apache.org/licenses/LICENSE-2.0
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 * ============LICENSE_END=========================================================
18 package org.onap.policy.controlloop.policy.guard;
20 import static org.junit.Assert.assertEquals;
21 import static org.junit.Assert.assertFalse;
22 import static org.junit.Assert.assertNotNull;
23 import static org.junit.Assert.assertNull;
24 import static org.junit.Assert.assertTrue;
26 import java.util.LinkedList;
27 import java.util.List;
29 import org.junit.Test;
31 public class GuardPolicyTest {
34 public void testConstructor(){
35 GuardPolicy guardPolicy = new GuardPolicy();
37 assertNotNull(guardPolicy.getId());
38 assertNull(guardPolicy.getName());
39 assertNull(guardPolicy.getDescription());
40 assertNull(guardPolicy.getMatch_parameters());
41 assertNull(guardPolicy.getLimit_constraints());
45 public void testConstructorString(){
46 String id = "guard id";
47 GuardPolicy guardPolicy = new GuardPolicy(id);
49 assertEquals(id, guardPolicy.getId());
50 assertNull(guardPolicy.getName());
51 assertNull(guardPolicy.getDescription());
52 assertNull(guardPolicy.getMatch_parameters());
53 assertNull(guardPolicy.getLimit_constraints());
57 public void testConstructorStringStringStringMatchParameters(){
58 String id = "guard id";
59 String name = "guard name";
60 String description = "guard description";
61 MatchParameters matchParameters = new MatchParameters();
62 List<Constraint> limitConstraints = new LinkedList<>();
63 limitConstraints.add(new Constraint());
64 GuardPolicy guardPolicy = new GuardPolicy(id, name, description, matchParameters);
66 assertNotNull(guardPolicy.getId());
67 assertEquals(name, guardPolicy.getName());
68 assertEquals(description, guardPolicy.getDescription());
69 assertEquals(matchParameters, guardPolicy.getMatch_parameters());
70 assertNull(guardPolicy.getLimit_constraints());
74 public void testConstructorStringMatchParametersList(){
75 String name = "guard name";
76 MatchParameters matchParameters = new MatchParameters();
77 List<Constraint> limitConstraints = new LinkedList<>();
78 limitConstraints.add(new Constraint());
79 GuardPolicy guardPolicy = new GuardPolicy(name, matchParameters, limitConstraints);
81 assertNotNull(guardPolicy.getId());
82 assertEquals(name, guardPolicy.getName());
83 assertNull(guardPolicy.getDescription());
84 assertEquals(matchParameters, guardPolicy.getMatch_parameters());
85 assertEquals(limitConstraints, guardPolicy.getLimit_constraints());
89 public void testConstructorStringStringMatchParametersList(){
90 String name = "guard name";
91 String description = "guard description";
92 MatchParameters matchParameters = new MatchParameters();
93 List<Constraint> limitConstraints = new LinkedList<>();
94 limitConstraints.add(new Constraint());
95 GuardPolicy guardPolicy = new GuardPolicy(name, description, matchParameters, limitConstraints);
97 assertNotNull(guardPolicy.getId());
98 assertEquals(name, guardPolicy.getName());
99 assertEquals(description, guardPolicy.getDescription());
100 assertEquals(matchParameters, guardPolicy.getMatch_parameters());
101 assertEquals(limitConstraints, guardPolicy.getLimit_constraints());
105 public void testConstructorStringStringStringMatchParametersList(){
106 String id = "guard id";
107 String name = "guard name";
108 String description = "guard description";
109 MatchParameters matchParameters = new MatchParameters();
110 List<Constraint> limitConstraints = new LinkedList<>();
111 limitConstraints.add(new Constraint());
112 GuardPolicy guardPolicy = new GuardPolicy(id, name, description, matchParameters, limitConstraints);
114 assertEquals(id, guardPolicy.getId());
115 assertEquals(name, guardPolicy.getName());
116 assertEquals(description, guardPolicy.getDescription());
117 assertEquals(matchParameters, guardPolicy.getMatch_parameters());
118 assertEquals(limitConstraints, guardPolicy.getLimit_constraints());
122 public void testConstructorGuardPolicy(){
123 String id = "guard id";
124 String name = "guard name";
125 String description = "guard description";
126 MatchParameters matchParameters = new MatchParameters();
127 List<Constraint> limitConstraints = new LinkedList<>();
128 limitConstraints.add(new Constraint());
129 GuardPolicy guardPolicy1 = new GuardPolicy(id, name, description, matchParameters, limitConstraints);
131 GuardPolicy guardPolicy2 = new GuardPolicy(guardPolicy1);
134 assertEquals(id, guardPolicy2.getId());
135 assertEquals(name, guardPolicy2.getName());
136 assertEquals(description, guardPolicy2.getDescription());
137 assertEquals(matchParameters, guardPolicy2.getMatch_parameters());
138 assertEquals(limitConstraints, guardPolicy2.getLimit_constraints());
142 public void testSetAndGetId(){
143 String id = "guard id";
144 GuardPolicy guardPolicy = new GuardPolicy();
145 guardPolicy.setId(id);
146 assertEquals(id, guardPolicy.getId());
150 public void testSetAndGetName(){
151 String name = "guard name";
152 GuardPolicy guardPolicy = new GuardPolicy();
153 guardPolicy.setName(name);
154 assertEquals(name, guardPolicy.getName());
158 public void testSetAndGetDescription(){
159 String description = "guard description";
160 GuardPolicy guardPolicy = new GuardPolicy();
161 guardPolicy.setDescription(description);
162 assertEquals(description, guardPolicy.getDescription());
166 public void testSetAndGetMatchParameters(){
167 MatchParameters matchParameters = new MatchParameters();
168 GuardPolicy guardPolicy = new GuardPolicy();
169 guardPolicy.setMatch_parameters(matchParameters);
170 assertEquals(matchParameters, guardPolicy.getMatch_parameters());
174 public void testSetAndGetLimitConstraints(){
175 LinkedList<Constraint> limitConstraints = new LinkedList<>();
176 limitConstraints.add(new Constraint());
177 GuardPolicy guardPolicy = new GuardPolicy();
178 guardPolicy.setLimit_constraints(limitConstraints);
179 assertEquals(limitConstraints, guardPolicy.getLimit_constraints());
183 public void testIsValid(){
184 GuardPolicy guardPolicy = new GuardPolicy();
185 assertFalse(guardPolicy.isValid());
187 guardPolicy.setName("guard name");
188 assertTrue(guardPolicy.isValid());
190 guardPolicy.setId(null);
191 assertFalse(guardPolicy.isValid());
195 public void testToString(){
196 String id = "guard id";
197 String name = "guard name";
198 String description = "guard description";
199 MatchParameters matchParameters = new MatchParameters();
200 List<Constraint> limitConstraints = new LinkedList<>();
201 limitConstraints.add(new Constraint());
202 GuardPolicy guardPolicy = new GuardPolicy(id, name, description, matchParameters, limitConstraints);
204 assertEquals(guardPolicy.toString(), "Policy [id=guard id, name=guard name, description=guard description, "
205 + "match_parameters=MatchParameters [controlLoopName=null, actor=null, recipe=null, targets=null], "
206 + "limitConstraints=[Constraint [freq_limit_per_target=null, time_window=null, active_time_range=null, blacklist=null]]]", guardPolicy.toString());
210 public void testEquals(){
211 String id = "guard id";
212 String name = "guard name";
213 String description = "guard description";
214 GuardPolicy guardPolicy1 = new GuardPolicy(id);
215 GuardPolicy guardPolicy2 = new GuardPolicy();
216 assertFalse(guardPolicy1.equals(guardPolicy2));
218 guardPolicy2.setId(id);
219 assertTrue(guardPolicy1.equals(guardPolicy2));
220 assertEquals(guardPolicy1.hashCode(), guardPolicy2.hashCode());
222 guardPolicy1.setName(name);
223 assertFalse(guardPolicy1.equals(guardPolicy2));
224 guardPolicy2.setName(name);
225 assertTrue(guardPolicy1.equals(guardPolicy2));
226 assertEquals(guardPolicy1.hashCode(), guardPolicy2.hashCode());
228 guardPolicy1.setDescription(description);
229 assertFalse(guardPolicy1.equals(guardPolicy2));
230 guardPolicy2.setDescription(description);
231 assertTrue(guardPolicy1.equals(guardPolicy2));
232 assertEquals(guardPolicy1.hashCode(), guardPolicy2.hashCode());
234 MatchParameters matchParameters = new MatchParameters();
235 guardPolicy1.setMatch_parameters(matchParameters);
236 assertFalse(guardPolicy1.equals(guardPolicy2));
237 guardPolicy2.setMatch_parameters(matchParameters);
238 assertTrue(guardPolicy1.equals(guardPolicy2));
239 assertEquals(guardPolicy1.hashCode(), guardPolicy2.hashCode());
241 LinkedList<Constraint> limitConstraints = new LinkedList<>();
242 limitConstraints.add(new Constraint());
243 guardPolicy1.setLimit_constraints(limitConstraints);
244 assertFalse(guardPolicy1.equals(guardPolicy2));
245 guardPolicy2.setLimit_constraints(limitConstraints);
246 assertTrue(guardPolicy1.equals(guardPolicy2));
247 assertEquals(guardPolicy1.hashCode(), guardPolicy2.hashCode());
251 public void testEqualsSameObject(){
252 GuardPolicy guardPolicy = new GuardPolicy();
253 assertTrue(guardPolicy.equals(guardPolicy));
257 public void testEqualsNull(){
258 GuardPolicy guardPolicy = new GuardPolicy();
259 assertFalse(guardPolicy.equals(null));
263 public void testEqualsInstanceOfDiffClass(){
264 GuardPolicy guardPolicy = new GuardPolicy();
265 assertFalse(guardPolicy.equals(""));