@@ -237,6 +237,71 @@ def test_conditions_with_multiple_rules(self):
237
237
)
238
238
)
239
239
240
+ def test_fn_equals_assertions_two (self ):
241
+ template = decode_str (
242
+ """
243
+ Rules:
244
+ Rule1:
245
+ Assertions:
246
+ - Assert: !Equals ["A", "B"]
247
+ Rule2:
248
+ Assertions:
249
+ - Assert: !Equals ["A", "A"]
250
+ """
251
+ )[0 ]
252
+
253
+ cfn = Template ("" , template )
254
+ self .assertEqual (len (cfn .conditions ._conditions ), 0 )
255
+ self .assertEqual (len (cfn .conditions ._rules ), 2 )
256
+
257
+ self .assertListEqual (
258
+ [equal .hash for equal in cfn .conditions ._rules [0 ].equals ],
259
+ [
260
+ "e7e68477799682e53ecb09f476128abaeba0bdae" ,
261
+ ],
262
+ )
263
+ self .assertListEqual (
264
+ [equal .hash for equal in cfn .conditions ._rules [1 ].equals ],
265
+ [
266
+ "da2a95009a205d5caacd42c3c11ebd4c151b3409" ,
267
+ ],
268
+ )
269
+
270
+ self .assertFalse (
271
+ cfn .conditions .satisfiable (
272
+ {},
273
+ {},
274
+ )
275
+ )
276
+
277
+ def test_fn_equals_assertions_one (self ):
278
+ template = decode_str (
279
+ """
280
+ Rules:
281
+ Rule1:
282
+ Assertions:
283
+ - Assert: !Equals ["A", "A"]
284
+ """
285
+ )[0 ]
286
+
287
+ cfn = Template ("" , template )
288
+ self .assertEqual (len (cfn .conditions ._conditions ), 0 )
289
+ self .assertEqual (len (cfn .conditions ._rules ), 1 )
290
+
291
+ self .assertListEqual (
292
+ [equal .hash for equal in cfn .conditions ._rules [0 ].equals ],
293
+ [
294
+ "da2a95009a205d5caacd42c3c11ebd4c151b3409" ,
295
+ ],
296
+ )
297
+
298
+ self .assertTrue (
299
+ cfn .conditions .satisfiable (
300
+ {},
301
+ {},
302
+ )
303
+ )
304
+
240
305
241
306
class TestAssertion (TestCase ):
242
307
def test_assertion_errors (self ):
0 commit comments