summaryrefslogtreecommitdiff
path: root/test/junit/scala/collection/immutable/ListSetTest.scala
blob: 395da88c75b6f241fe5b92977ac2fe329b2364e7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
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 ListSetTest {

  @Test
  def t7445(): Unit = {
    val s = ListSet(1, 2, 3, 4, 5)
    assertEquals(ListSet(2, 3, 4, 5), s.tail)
  }

  @Test
  def hasCorrectBuilder(): Unit = {
    val m = ListSet("a", "b", "c", "b", "d")
    assertEquals(List("a", "b", "c", "d"), m.toList)
  }

  @Test
  def hasTailRecursiveDelete(): Unit = {
    val s = ListSet(1 to 50000: _*)
    try s - 25000 catch { case e: StackOverflowError => fail("A stack overflow occurred") }
  }

  @Test
  def hasCorrectHeadTailLastInit(): Unit = {
    val m = ListSet(1, 2, 3)
    assertEquals(1, m.head)
    assertEquals(ListSet(2, 3), m.tail)
    assertEquals(3, m.last)
    assertEquals(ListSet(1, 2), m.init)
  }

  @Test
  def hasCorrectAddRemove(): Unit = {
    val m = ListSet(1, 2, 3)
    assertEquals(ListSet(1, 2, 3, 4), m + 4)
    assertEquals(ListSet(1, 2, 3), m + 2)
    assertEquals(ListSet(2, 3), m - 1)
    assertEquals(ListSet(1, 3), m - 2)
    assertEquals(ListSet(1, 2, 3), m - 4)
  }

  @Test
  def hasCorrectIterator(): Unit = {
    val s = ListSet(1, 2, 3, 5, 4)
    assertEquals(List(1, 2, 3, 5, 4), s.iterator.toList)
  }
}