package scala.collection.immutable import org.junit.Assert._ import org.junit.Test import org.junit.runner.RunWith import org.junit.runners.JUnit4 @RunWith(classOf[JUnit4]) class ListMapTest { @Test def t7445(): Unit = { val m = ListMap(1 -> 1, 2 -> 2, 3 -> 3, 4 -> 4, 5 -> 5) assertEquals(ListMap(2 -> 2, 3 -> 3, 4 -> 4, 5 -> 5), m.tail) } @Test def hasCorrectBuilder(): Unit = { val m = ListMap("a" -> "1", "b" -> "2", "c" -> "3", "b" -> "2.2", "d" -> "4") assertEquals(List("a" -> "1", "c" -> "3", "b" -> "2.2", "d" -> "4"), m.toList) } @Test def hasCorrectHeadTailLastInit(): Unit = { val m = ListMap(1 -> 1, 2 -> 2, 3 -> 3) assertEquals(1 -> 1, m.head) assertEquals(ListMap(2 -> 2, 3 -> 3), m.tail) assertEquals(3 -> 3, m.last) assertEquals(ListMap(1 -> 1, 2 -> 2), m.init) } @Test def hasCorrectAddRemove(): Unit = { val m = ListMap(1 -> 1, 2 -> 2, 3 -> 3) assertEquals(ListMap(1 -> 1, 2 -> 2, 3 -> 3, 4 -> 4), m + (4 -> 4)) assertEquals(ListMap(1 -> 1, 3 -> 3, 2 -> 4), m + (2 -> 4)) assertEquals(ListMap(1 -> 1, 2 -> 2, 3 -> 3), m + (2 -> 2)) assertEquals(ListMap(2 -> 2, 3 -> 3), m - 1) assertEquals(ListMap(1 -> 1, 3 -> 3), m - 2) assertEquals(ListMap(1 -> 1, 2 -> 2, 3 -> 3), m - 4) } @Test def hasCorrectIterator(): Unit = { val m = ListMap(1 -> 1, 2 -> 2, 3 -> 3, 5 -> 5, 4 -> 4) assertEquals(List(1 -> 1, 2 -> 2, 3 -> 3, 5 -> 5, 4 -> 4), m.iterator.toList) } }