diff options
author | Jesse Luehrs <doy@tozt.net> | 2013-03-01 13:49:03 -0600 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2013-03-01 13:49:03 -0600 |
commit | b040805e6afae337b2602f794af9d3ddb1f003a5 (patch) | |
tree | a902a7462773e1c007f4b15ac2f5230ae4c21641 | |
parent | 01675281e8e40dcb65c92d7c9fecbe4a94d50bfa (diff) | |
download | scala-test-more-b040805e6afae337b2602f794af9d3ddb1f003a5.tar.gz scala-test-more-b040805e6afae337b2602f794af9d3ddb1f003a5.zip |
move more things around
8 files changed, 65 insertions, 58 deletions
diff --git a/src/main/scala/org/perl8/test/harness/SummarizedTests.scala b/src/main/scala/org/perl8/test/harness/SummarizedTests.scala index c235cdd..3688011 100644 --- a/src/main/scala/org/perl8/test/harness/SummarizedTests.scala +++ b/src/main/scala/org/perl8/test/harness/SummarizedTests.scala @@ -6,8 +6,7 @@ import scala.concurrent.duration.Duration import scala.concurrent.ExecutionContext.Implicits.global import scala.concurrent.Future -import org.perl8.test.tap.Consumer.{TAPResult,TodoDirective} -import org.perl8.test.tap.{Parser,TAPEvent} +import org.perl8.test.tap.{Parser,TAPEvent,TAPResult,TodoDirective} import org.perl8.test.Test trait SummarizedTests { diff --git a/src/main/scala/org/perl8/test/harness/SummaryReporter.scala b/src/main/scala/org/perl8/test/harness/SummaryReporter.scala index 33b670b..083290b 100644 --- a/src/main/scala/org/perl8/test/harness/SummaryReporter.scala +++ b/src/main/scala/org/perl8/test/harness/SummaryReporter.scala @@ -1,7 +1,7 @@ package org.perl8.test.harness -import org.perl8.test.tap.Consumer.{TAPResult,TodoDirective} import org.perl8.test.tap.{TAPEvent,StartEvent,ResultEvent,PlanEvent,EndEvent} +import org.perl8.test.tap.{TAPResult,TodoDirective} import org.perl8.test.Test class SummaryReporter extends MultiTestReporter with SummarizedTests { diff --git a/src/main/scala/org/perl8/test/tap/Consumer.scala b/src/main/scala/org/perl8/test/tap/Consumer.scala index 5e03058..8c55e17 100644 --- a/src/main/scala/org/perl8/test/tap/Consumer.scala +++ b/src/main/scala/org/perl8/test/tap/Consumer.scala @@ -95,49 +95,4 @@ object Consumer { private val planRx = """^(\s*)1..(\d+)\s*(?:# SKIP (.*))?""".r private val resultRx = """^(\s*)(not )?ok (\d+)\s*([^#]+)?(?:#\s*(?i:(skip|todo))\s+(.*))?""".r - - sealed trait Directive { - val message: Option[String] - } - case class SkipDirective (message: Option[String]) extends Directive - case class TodoDirective (message: Option[String]) extends Directive - - class TestResult ( - val passed: Boolean, - val number: Int, - val description: String, - val directive: Option[Directive], - val subtest: Option[TAPResult] - ) - - class TAPResult (val plan: Plan, val results: Seq[TestResult]) { - val matchesPlan = plan match { - case NumericPlan(n) => results.length == n - case _ => results.length == 0 - } - - val fails = results.count { r => - !r.passed && !r.directive.isDefined - } - - val testsPassed = fails == 0 - - val success = plan match { - case SkipAll(_) => true - case _ => results.length > 0 && fails == 0 && matchesPlan - } - - val exitCode = - if (success) { - 0 - } - else if (!matchesPlan || results.length == 0) { - 255 - } - else { - fails - } - } - - case class ParseException (message: String) extends RuntimeException(message) } diff --git a/src/main/scala/org/perl8/test/tap/Parser.scala b/src/main/scala/org/perl8/test/tap/Parser.scala index 8b38ebc..1ab192f 100644 --- a/src/main/scala/org/perl8/test/tap/Parser.scala +++ b/src/main/scala/org/perl8/test/tap/Parser.scala @@ -194,12 +194,3 @@ class Parser private ( def column: Int = 1 } } - -sealed trait TAPEvent -case object StartEvent extends TAPEvent -case class EndEvent (result: TAPResult) extends TAPEvent -case class ResultEvent (result: TestResult) extends TAPEvent -case class PlanEvent (plan: Plan) extends TAPEvent -case object SubtestStartEvent extends TAPEvent -case class SubtestEndEvent (result: TestResult) extends TAPEvent -case class CommentEvent (text: String) extends TAPEvent diff --git a/src/main/scala/org/perl8/test/tap/TAPEvent.scala b/src/main/scala/org/perl8/test/tap/TAPEvent.scala new file mode 100644 index 0000000..184e7ab --- /dev/null +++ b/src/main/scala/org/perl8/test/tap/TAPEvent.scala @@ -0,0 +1,12 @@ +package org.perl8.test.tap + +import org.perl8.test.Plan + +sealed trait TAPEvent +case object StartEvent extends TAPEvent +case class EndEvent (result: TAPResult) extends TAPEvent +case class ResultEvent (result: TestResult) extends TAPEvent +case class PlanEvent (plan: Plan) extends TAPEvent +case object SubtestStartEvent extends TAPEvent +case class SubtestEndEvent (result: TestResult) extends TAPEvent +case class CommentEvent (text: String) extends TAPEvent diff --git a/src/main/scala/org/perl8/test/tap/TAPResult.scala b/src/main/scala/org/perl8/test/tap/TAPResult.scala new file mode 100644 index 0000000..21c7986 --- /dev/null +++ b/src/main/scala/org/perl8/test/tap/TAPResult.scala @@ -0,0 +1,46 @@ +package org.perl8.test.tap + +import org.perl8.test.{Plan,NumericPlan,SkipAll} + +sealed trait Directive { + val message: Option[String] +} +case class SkipDirective (message: Option[String]) extends Directive +case class TodoDirective (message: Option[String]) extends Directive + +class TestResult ( + val passed: Boolean, + val number: Int, + val description: String, + val directive: Option[Directive], + val subtest: Option[TAPResult] +) + +class TAPResult (val plan: Plan, val results: Seq[TestResult]) { + val matchesPlan = plan match { + case NumericPlan(n) => results.length == n + case _ => results.length == 0 + } + + val fails = results.count { r => + !r.passed && !r.directive.isDefined + } + + val testsPassed = fails == 0 + + val success = plan match { + case SkipAll(_) => true + case _ => results.length > 0 && fails == 0 && matchesPlan + } + + val exitCode = + if (success) { + 0 + } + else if (!matchesPlan || results.length == 0) { + 255 + } + else { + fails + } +} diff --git a/src/main/scala/org/perl8/test/tap/package.scala b/src/main/scala/org/perl8/test/tap/package.scala new file mode 100644 index 0000000..ffc732c --- /dev/null +++ b/src/main/scala/org/perl8/test/tap/package.scala @@ -0,0 +1,5 @@ +package org.perl8.test + +package object tap { + case class ParseException (message: String) extends RuntimeException(message) +} diff --git a/src/test/scala/org/perl8/test/tap/ParserTest.scala b/src/test/scala/org/perl8/test/tap/ParserTest.scala index 0781399..ee7fe83 100644 --- a/src/test/scala/org/perl8/test/tap/ParserTest.scala +++ b/src/test/scala/org/perl8/test/tap/ParserTest.scala @@ -1,7 +1,6 @@ package org.perl8.test.tap import org.perl8.test.{TestMore,SkipAll,NumericPlan} -import org.perl8.test.tap.Consumer.{SkipDirective,TodoDirective} class ParserTest extends TestMore { subtest ("basic") { |