samples/effectivelist/test/org/apidesign/effectivelist/ListMixinTest.scala
author Jaroslav Tulach <jtulach@netbeans.org>
Sun, 06 Oct 2013 22:05:14 +0200
changeset 407 e1439046d96e
parent 403 ebe08056c60c
permissions -rw-r--r--
Looks like scala change URLs of its releases
     1 package org.apidesign.effectivelist
     2 
     3 import org.junit._
     4 import Assert._
     5 
     6 // BEGIN: effectivelist.point
     7 class Point(val x: Int, val y : Int);
     8 // END: effectivelist.point
     9 
    10 class ListMixinTest {
    11   // BEGIN: effectivelist.convert
    12   class ListablePoint(x: Int, y: Int)
    13   extends Point(x,y) with Listable[ListablePoint] {
    14     def this(r : Point) = this(r.x, r.y)
    15   }
    16   implicit def toList(p : Point) : ListablePoint = new ListablePoint(p)
    17 
    18   @Test def useThePlainOldPointInList : Unit = {
    19     val list = new List[ListablePoint]
    20     list.add(new Point(10, 20))
    21     assertEquals("One element", 1, list.size)
    22     assertEquals("X is 10", 10, list.get(0).x)
    23     assertEquals("y is 20", 20, list.get(0).y)
    24   }
    25   // END: effectivelist.convert
    26 
    27 }