diff options
author | Dmitry Petrashko <dmitry.petrashko@gmail.com> | 2015-05-12 18:30:53 +0200 |
---|---|---|
committer | Dmitry Petrashko <dmitry.petrashko@gmail.com> | 2015-05-12 18:30:53 +0200 |
commit | 89bacb9c25a58454ff1878e67f7ea07ffc8c269f (patch) | |
tree | 51f1ff6c66aebe1b6109b1cffcc2bb8e4cf760a3 /tests/pending/run/richs.scala | |
parent | a0fa33deafbea1bf53edc068c5ed9db5592822f9 (diff) | |
download | dotty-89bacb9c25a58454ff1878e67f7ea07ffc8c269f.tar.gz dotty-89bacb9c25a58454ff1878e67f7ea07ffc8c269f.tar.bz2 dotty-89bacb9c25a58454ff1878e67f7ea07ffc8c269f.zip |
Run tests as they were in scala.
Diffstat (limited to 'tests/pending/run/richs.scala')
-rw-r--r-- | tests/pending/run/richs.scala | 139 |
1 files changed, 139 insertions, 0 deletions
diff --git a/tests/pending/run/richs.scala b/tests/pending/run/richs.scala new file mode 100644 index 000000000..4b5345757 --- /dev/null +++ b/tests/pending/run/richs.scala @@ -0,0 +1,139 @@ +trait RichTest { + val s1 = """abc""" + val s2 = """abc\txyz\n""" + val s3 = """abc + xyz""" + val s4 = """abc + |xyz""" + val s5 = """abc + #xyz""" + def getObjectName: String = { + val cn = this.getClass().getName() + cn.substring(0, cn.length-1) + } + def length[A](it: Iterator[A]) = it.toList.length + def length[A](it: Iterable[A]) = it.toList.length + def run: Unit +} +object RichCharTest1 extends RichTest { + def run { + println("\n" + getObjectName + ":") + println('\40'.isWhitespace) + println('\011'.isWhitespace) + println('1'.asDigit == 1) + println('A'.asDigit == 10) + } +} +// object RichCharTest2 extends RichTest { +// case class C(s: String) { +// private val it = s.iterator +// private var c: Char = _ +// def ch(): Char = c +// def nextch(): Unit = { c = if (it.hasNext) it.next else ';' } +// def err(msg: String) = println(msg) +// nextch() +// } +// def run { +// println("\n" + getObjectName + ":") +// val c1 = C("x4A;") +// val s1 = xml.Utility.parseCharRef(c1.ch, c1.nextch, c1.err) +// val c2 = C("74;") +// val s2 = xml.Utility.parseCharRef(c2.ch, c2.nextch, c2.err) +// println(s1 == s2) +// } +// } +object RichIntTest extends RichTest { + private val n = 10 + private val m = -2 + def run { + println("\n" + getObjectName + ":") + println(length(0 until n)) + println(length(0 to n)) + println(length(m until n)) + println(length(m to n)) + println(length(n until m)) + println(length(n to m)) + + println(16.toBinaryString) // should be "10000" + println(16.toHexString) // should be "10" + println(16.toOctalString) // should be "20" + + println(65537.toHexString) // should be "10001" + println((-1).toHexString) // should be "ffffffff" + } +} +object RichStringTest1 extends RichTest { + def run { + println("\n" + getObjectName + ":") + println("s1: " + s1) + println("s2: " + s2) + println("s3: " + s3) + println("s4: " + s4) + println("s5: " + s5) + } +} +object RichStringTest2 extends RichTest { + def run { + println("\n" + getObjectName + ":") + Console.print("s1: "); s1.lines foreach println + Console.print("s2: "); s2.lines foreach println + Console.print("s3: "); s3.lines foreach println + Console.print("s4: "); s4.lines foreach println + Console.print("s5: "); s5.lines foreach println + } +} +object RichStringTest3 extends RichTest { + def run { + println("\n" + getObjectName + ":") + println("s1: " + s1.stripLineEnd) + println("s2: " + s2.stripLineEnd) + println("s3: " + s3.stripLineEnd) + println("s4: " + s4.stripLineEnd) + println("s5: " + s5.stripLineEnd) + } +} +object RichStringTest4 extends RichTest { + def run { + println("\n" + getObjectName + ":") + println("s1: " + s1.stripMargin) + println("s2: " + s2.stripMargin) + println("s3: " + s3.stripMargin) + println("s4: " + s4.stripMargin) + println("s5: " + s5.stripMargin) + } +} +object RichStringTest5 extends RichTest { + def run { + println("\n" + getObjectName + ":") + println("s1: " + s3.stripMargin('#')) + println("s2: " + s3.stripMargin('#')) + println("s3: " + s3.stripMargin('#')) + println("s4: " + s4.stripMargin('#')) + println("s5: " + s5.stripMargin('#')) + } +} +object RichStringTest6 extends RichTest { + def run { + println("a:b:c:d".split(':').toList) + println("a.b.c.d".split('.').toList) + println("a$b$c$d".split('$').toList) + println("a^b^c^d".split('^').toList) + println("a\\b\\c\\d".split('\\').toList) + println("a:b:c.d".split(Array(':', '.')).toList) + println("a:b.c$d".split(Array(':', '.', '$')).toList) + } +} +/** xxx */ +object Test { + def main(args: Array[String]) { + RichCharTest1.run + //RichCharTest2.run + RichIntTest.run + RichStringTest1.run + RichStringTest2.run + RichStringTest3.run + RichStringTest4.run + RichStringTest5.run + RichStringTest6.run + } +} |