aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2013-02-20 09:57:53 -0600
committerJesse Luehrs <doy@tozt.net>2013-02-20 09:57:53 -0600
commitf3c81a12abb34203e75e4ca8f4a06072f6be782f (patch)
treeb9f5a7e04a0fa6c366ec7724ce4b6ab6e98c62b0 /src
parent5d52686dc9a467a3ce41f34cfdc0c42271a3a7fd (diff)
downloadscala-test-more-f3c81a12abb34203e75e4ca8f4a06072f6be782f.tar.gz
scala-test-more-f3c81a12abb34203e75e4ca8f4a06072f6be782f.zip
implement skip
Diffstat (limited to 'src')
-rw-r--r--src/main/scala/testbuilder.scala10
-rw-r--r--src/main/scala/testbuilder/tap.scala11
-rw-r--r--src/test/scala/basic.scala19
3 files changed, 40 insertions, 0 deletions
diff --git a/src/main/scala/testbuilder.scala b/src/main/scala/testbuilder.scala
index 7177f27..940e70a 100644
--- a/src/main/scala/testbuilder.scala
+++ b/src/main/scala/testbuilder.scala
@@ -23,6 +23,16 @@ class Builder (plan: Option[Plan], out: OutputStream) {
println(line)
}
+ def skip (reason: String) {
+ skip(Some(reason))
+ }
+
+ def skip (reason: Option[String] = None) {
+ val line = tap.skip(state.currentTest, reason)
+ state.ok(true)
+ println(line)
+ }
+
def diag (message: String) {
println(tap.comment(message))
}
diff --git a/src/main/scala/testbuilder/tap.scala b/src/main/scala/testbuilder/tap.scala
index ff770c9..10e00b3 100644
--- a/src/main/scala/testbuilder/tap.scala
+++ b/src/main/scala/testbuilder/tap.scala
@@ -14,6 +14,17 @@ object tap {
desc
)
+ def skip (num: Int, reason: String): String =
+ skip(num, Some(reason))
+
+ def skip (num: Int, reason: Option[String] = None): String =
+ join(
+ Some("ok"),
+ Some(num),
+ Some("# skip"),
+ reason
+ )
+
def comment (message: String): String =
"# " + message
diff --git a/src/test/scala/basic.scala b/src/test/scala/basic.scala
index 5ee863e..81971ed 100644
--- a/src/test/scala/basic.scala
+++ b/src/test/scala/basic.scala
@@ -127,4 +127,23 @@ class Basic extends FunSuite {
assert(output.toString === expected)
}
+
+ test ("skip") {
+ val output = new ByteArrayOutputStream
+ val builder = new Builder(output)
+
+ builder.ok(false)
+ builder.skip("not now")
+ builder.skip()
+ builder.doneTesting
+
+ val expected =
+ "not ok 1\n" +
+ "ok 2 # skip not now\n" +
+ "ok 3 # skip\n" +
+ "1..3\n" +
+ "# Looks like you failed 1 test of 3.\n"
+
+ assert(output.toString === expected)
+ }
}