@@ -40,6 +40,7 @@ import kotlin.test.assertIs
40
40
import kotlin.test.assertNotEquals
41
41
import kotlin.test.assertNotSame
42
42
import kotlin.test.assertSame
43
+ import kotlin.test.assertTrue
43
44
44
45
class BasicLatticesTest {
45
46
@Test
@@ -124,11 +125,11 @@ class BasicLatticesTest {
124
125
125
126
val aBlaLattice1 =
126
127
MapLattice <String , Set <String >>(mapOf (" a" to PowersetLattice (setOf (" bla" ))))
127
- val bBlaLattice2 =
128
+ val aBlaLattice2 =
128
129
MapLattice <String , Set <String >>(mapOf (" a" to PowersetLattice (setOf (" bla" ))))
129
- assertEquals(0 , aBlaLattice1.compareTo(bBlaLattice2 ))
130
- assertEquals(aBlaLattice1, bBlaLattice2 )
131
- assertNotSame(aBlaLattice1, bBlaLattice2 )
130
+ assertEquals(0 , aBlaLattice1.compareTo(aBlaLattice2 ))
131
+ assertEquals(aBlaLattice1, aBlaLattice2 )
132
+ assertNotSame(aBlaLattice1, aBlaLattice2 )
132
133
133
134
val aBlaFooLattice =
134
135
MapLattice <String , Set <String >>(mapOf (" a" to PowersetLattice (setOf (" bla" , " foo" ))))
@@ -214,6 +215,8 @@ class BasicLatticesTest {
214
215
assertEquals(setOf (" bla" ), aBlaFooBBla.elements[" b" ]?.elements)
215
216
216
217
assertFalse(aBlaFooBBla == emptyLattice1) // Wrong elements
218
+ assertTrue(emptyLattice1 == emptyLattice2) // This is equal
219
+ assertTrue(aBlaLattice1 == aBlaLattice2) // This is equal
217
220
assertFalse(aBlaFooBBla == aBlaFooBBla.elements[" a" ]) // Wrong types
218
221
assertFalse(aBlaFooBBla.elements[" a" ] == aBlaFooBBla) // Wrong types
219
222
}
@@ -262,6 +265,8 @@ class BasicLatticesTest {
262
265
263
266
// We explicitly want to call equals here
264
267
assertFalse(blaBla == emptyBla) // Wrong elements
268
+ assertFalse(blaBla == blaEmpty) // Wrong elements
269
+ assertTrue(emptyBla2 == emptyBla) // Wrong elements
265
270
assertFalse(blaBla == emptyBlaFirst) // Wrong types
266
271
assertFalse(emptyBlaFirst == blaBla) // Wrong types
267
272
}
@@ -300,21 +305,21 @@ class BasicLatticesTest {
300
305
emptyPowersetLattice<String >()
301
306
)
302
307
)
303
- val emptyBla2 = emptyEmptyBla.duplicate()
304
- assertEquals(0 , emptyEmptyBla.compareTo(emptyBla2 ))
305
- assertEquals(emptyEmptyBla, emptyBla2 )
306
- assertNotSame(emptyEmptyBla, emptyBla2 )
307
- assertNotSame(emptyEmptyBla.hashCode(), emptyBla2 .hashCode())
308
+ val emptyEmptyBla2 = emptyEmptyBla.duplicate()
309
+ assertEquals(0 , emptyEmptyBla.compareTo(emptyEmptyBla2 ))
310
+ assertEquals(emptyEmptyBla, emptyEmptyBla2 )
311
+ assertNotSame(emptyEmptyBla, emptyEmptyBla2 )
312
+ assertNotSame(emptyEmptyBla.hashCode(), emptyEmptyBla2 .hashCode())
308
313
val (emptyBlaFirst, emptyBlaSecond, emptyBlaThird) = emptyEmptyBla
309
314
assertSame(emptyBlaFirst, emptyEmptyBla.elements.first)
310
315
assertSame(emptyBlaSecond, emptyEmptyBla.elements.second)
311
316
assertSame(emptyBlaThird, emptyEmptyBla.elements.third)
312
- assertNotSame(emptyBlaFirst, emptyBla2 .elements.first)
313
- assertEquals(emptyBlaFirst, emptyBla2 .elements.first)
314
- assertNotSame(emptyBlaSecond, emptyBla2 .elements.second)
315
- assertEquals(emptyBlaSecond, emptyBla2 .elements.second)
316
- assertNotSame(emptyBlaThird, emptyBla2 .elements.third)
317
- assertEquals(emptyBlaThird, emptyBla2 .elements.third)
317
+ assertNotSame(emptyBlaFirst, emptyEmptyBla2 .elements.first)
318
+ assertEquals(emptyBlaFirst, emptyEmptyBla2 .elements.first)
319
+ assertNotSame(emptyBlaSecond, emptyEmptyBla2 .elements.second)
320
+ assertEquals(emptyBlaSecond, emptyEmptyBla2 .elements.second)
321
+ assertNotSame(emptyBlaThird, emptyEmptyBla2 .elements.third)
322
+ assertEquals(emptyBlaThird, emptyEmptyBla2 .elements.third)
318
323
319
324
assertEquals(- 1 , emptyEmptyEmpty.compareTo(emptyEmptyBla))
320
325
assertEquals(- 1 , emptyEmptyEmpty.compareTo(emptyBlaEmpty))
@@ -337,6 +342,10 @@ class BasicLatticesTest {
337
342
338
343
// We explicitly want to call equals here
339
344
assertFalse(blaEmptyBla == emptyEmptyBla) // Wrong elements
345
+ assertFalse(emptyEmptyEmpty == emptyEmptyBla) // Wrong elements
346
+ assertFalse(emptyEmptyEmpty == emptyBlaEmpty) // Wrong elements
347
+ assertFalse(emptyEmptyEmpty == blaEmptyEmpty) // Wrong elements
348
+ assertTrue(emptyEmptyBla2 == emptyEmptyBla) // Same type and same elements
340
349
assertFalse(blaEmptyBla == emptyBlaFirst) // Wrong types
341
350
assertFalse(emptyBlaFirst == blaEmptyBla) // Wrong types
342
351
}
0 commit comments