aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/scala/org/perl8/test/TestMore.scala
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2013-02-20 15:37:52 -0600
committerJesse Luehrs <doy@tozt.net>2013-02-20 15:37:52 -0600
commitb69429160132e4859fe4a527daab510ce42e7e07 (patch)
tree89893a6ac9370293b2174fcf92afa433c32f3e23 /src/main/scala/org/perl8/test/TestMore.scala
parent9f984523a9bb1c3fc5aafa197ca40a5e4b9227d1 (diff)
downloadscala-test-more-b69429160132e4859fe4a527daab510ce42e7e07.tar.gz
scala-test-more-b69429160132e4859fe4a527daab510ce42e7e07.zip
todo
Diffstat (limited to 'src/main/scala/org/perl8/test/TestMore.scala')
-rw-r--r--src/main/scala/org/perl8/test/TestMore.scala15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/main/scala/org/perl8/test/TestMore.scala b/src/main/scala/org/perl8/test/TestMore.scala
index a56236c..f67508d 100644
--- a/src/main/scala/org/perl8/test/TestMore.scala
+++ b/src/main/scala/org/perl8/test/TestMore.scala
@@ -16,6 +16,7 @@ class TestMore (
this(None, out)
def delayedInit (body: => Unit) {
+ todo = NoMessage
builder = new TestBuilder(plan, out, 0, NoMessage)
testBody = () => body
}
@@ -27,7 +28,7 @@ class TestMore (
}
def ok (cond: Boolean, desc: Message = NoMessage): Boolean = {
- builder.ok(cond, desc.map(d => "- " + d))
+ builder.ok(cond, desc.map(d => "- " + d), todo)
if (!cond) {
failed(desc)
}
@@ -84,6 +85,17 @@ class TestMore (
builder.bailOut(desc)
}
+ def todo (reason: Message = NoMessage)(body: => Unit) {
+ val oldTodo = todo
+ try {
+ todo = reason
+ body
+ }
+ finally {
+ todo = oldTodo
+ }
+ }
+
private def failed (desc: Message) {
val caller = Thread.currentThread.getStackTrace.drop(1).find(frame => {
frame.getFileName != "TestMore.scala"
@@ -100,6 +112,7 @@ class TestMore (
builder.diag(message + trace)
}
+ private var todo: Message = _
private var builder: TestBuilder = _
private var testBody: () => Unit = _
}