class JUnitSuite extends JUnitSuiteLike
A suite of tests that can be run with either JUnit or ScalaTest. This class allows you to write JUnit 4 tests
with ScalaTest's more concise assertion syntax as well as JUnit's assertions (assertEquals
, etc.).
You create tests by defining methods that are annotated with Test
, and can create fixtures with
methods annotated with Before
and After
. For example:
import org.scalatest.junit.JUnitSuite import scala.collection.mutable.ListBuffer import _root_.org.junit.Test import _root_.org.junit.Before
class TwoSuite extends JUnitSuite {
var sb: StringBuilder = _ var lb: ListBuffer[String] = _
@Before def initialize() { sb = new StringBuilder("ScalaTest is ") lb = new ListBuffer[String] }
@Test def verifyEasy() { sb.append("easy!") assert(sb.toString === "ScalaTest is easy!") assert(lb.isEmpty) lb += "sweet" }
@Test def verifyFun() { sb.append("fun!") assert(sb.toString === "ScalaTest is fun!") assert(lb.isEmpty) } }
To execute JUnitSuite
s with ScalaTest's Runner
, you must include JUnit's jar file on the class path or runpath.
This version of JUnitSuite
was tested with JUnit version 4.10.
Instances of this class are not thread safe.
- Source
- JUnitSuite.scala
- Alphabetic
- By Inheritance
- JUnitSuite
- JUnitSuiteLike
- AssertionsForJUnit
- VersionSpecificAssertionsForJUnit
- Suite
- Serializable
- Assertions
- TripleEquals
- TripleEqualsSupport
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new JUnitSuite()
Type Members
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def !==[T](right: Spread[T]): TripleEqualsInvocationOnSpread[T]
- Definition Classes
- TripleEqualsSupport
- def !==(right: Null): TripleEqualsInvocation[Null]
- Definition Classes
- TripleEqualsSupport
- def !==[T](right: T): TripleEqualsInvocation[T]
- Definition Classes
- TripleEqualsSupport
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def ===[T](right: Spread[T]): TripleEqualsInvocationOnSpread[T]
- Definition Classes
- TripleEqualsSupport
- def ===(right: Null): TripleEqualsInvocation[Null]
- Definition Classes
- TripleEqualsSupport
- def ===[T](right: T): TripleEqualsInvocation[T]
- Definition Classes
- TripleEqualsSupport
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- macro def assert(condition: Boolean, clue: Any)(implicit prettifier: Prettifier, pos: Position): Assertion
- Definition Classes
- VersionSpecificAssertionsForJUnit → Assertions
- macro def assert(condition: Boolean)(implicit prettifier: Prettifier, pos: Position): Assertion
- Definition Classes
- VersionSpecificAssertionsForJUnit → Assertions
- macro def assertCompiles(code: String)(implicit pos: Position): Assertion
- Definition Classes
- Assertions
- macro def assertDoesNotCompile(code: String)(implicit pos: Position): Assertion
- Definition Classes
- Assertions
- def assertResult(expected: Any)(actual: Any)(implicit prettifier: Prettifier, pos: Position): Assertion
- Definition Classes
- Assertions
- def assertResult(expected: Any, clue: Any)(actual: Any)(implicit prettifier: Prettifier, pos: Position): Assertion
- Definition Classes
- Assertions
- def assertThrows[T <: AnyRef](f: => Any)(implicit classTag: ClassTag[T], pos: Position): Assertion
- Definition Classes
- Assertions
- macro def assertTypeError(code: String)(implicit pos: Position): Assertion
- Definition Classes
- Assertions
- macro def assume(condition: Boolean, clue: Any)(implicit prettifier: Prettifier, pos: Position): Assertion
- Definition Classes
- VersionSpecificAssertionsForJUnit → Assertions
- macro def assume(condition: Boolean)(implicit prettifier: Prettifier, pos: Position): Assertion
- Definition Classes
- VersionSpecificAssertionsForJUnit → Assertions
- def cancel(cause: Throwable)(implicit pos: Position): Nothing
- Definition Classes
- Assertions
- def cancel(message: String, cause: Throwable)(implicit pos: Position): Nothing
- Definition Classes
- Assertions
- def cancel(message: String)(implicit pos: Position): Nothing
- Definition Classes
- Assertions
- def cancel()(implicit pos: Position): Nothing
- Definition Classes
- Assertions
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def convertEquivalenceToAToBConstraint[A, B](equivalenceOfB: Equivalence[B])(implicit ev: <:<[A, B]): CanEqual[A, B]
- Definition Classes
- TripleEquals → TripleEqualsSupport
- def convertEquivalenceToBToAConstraint[A, B](equivalenceOfA: Equivalence[A])(implicit ev: <:<[B, A]): CanEqual[A, B]
- Definition Classes
- TripleEquals → TripleEqualsSupport
- def convertToCheckingEqualizer[T](left: T): CheckingEqualizer[T]
- Definition Classes
- TripleEquals → TripleEqualsSupport
- implicit def convertToEqualizer[T](left: T): Equalizer[T]
- Definition Classes
- TripleEquals → TripleEqualsSupport
- def defaultEquality[A]: Equality[A]
- Definition Classes
- TripleEqualsSupport
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def execute(testName: String, configMap: ConfigMap, color: Boolean, durations: Boolean, shortstacks: Boolean, fullstacks: Boolean, stats: Boolean): Unit
- Definition Classes
- Suite
- def expectedTestCount(filter: Filter): Int
Returns the number of tests expected to be run by JUnit when
run
is invoked on thisJUnitSuite
.Returns the number of tests expected to be run by JUnit when
run
is invoked on thisJUnitSuite
.If
tagsToInclude
in the passedFilter
is defined, this class's implementation of this method returns 0. Else this class's implementation of this method returns the size of the set returned bytestNames
on the current instance, less the number of tests that were annotated withorg.junit.Ignore
.- filter
a
Filter
for test filtering- returns
number of expected test count
- Definition Classes
- JUnitSuiteLike → Suite
- def fail(cause: Throwable)(implicit pos: Position): Nothing
- Definition Classes
- Assertions
- def fail(message: String, cause: Throwable)(implicit pos: Position): Nothing
- Definition Classes
- Assertions
- def fail(message: String)(implicit pos: Position): Nothing
- Definition Classes
- Assertions
- def fail()(implicit pos: Position): Nothing
- Definition Classes
- Assertions
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def intercept[T <: AnyRef](f: => Any)(implicit classTag: ClassTag[T], pos: Position): T
- Definition Classes
- Assertions
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def lowPriorityTypeCheckedConstraint[A, B](implicit equivalenceOfB: Equivalence[B], ev: <:<[A, B]): CanEqual[A, B]
- Definition Classes
- TripleEquals → TripleEqualsSupport
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def nestedSuites: IndexedSeq[Suite]
- Definition Classes
- Suite
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def pending: Assertion with PendingStatement
- Definition Classes
- Assertions
- def pendingUntilFixed(f: => Unit)(implicit pos: Position): Assertion with PendingStatement
- Definition Classes
- Assertions
- def rerunner: Option[String]
- Definition Classes
- Suite
- def run(testName: Option[String], args: Args): Status
Overrides to use JUnit 4 to run the test(s).
Overrides to use JUnit 4 to run the test(s).
- testName
an optional name of one test to run. If
None
, all relevant tests should be run. I.e.,None
acts like a wildcard that means run all relevant tests in thisSuite
.- args
the
Args
for this run- returns
a
Status
object that indicates when all tests and nested suites started by this method have completed, and whether or not a failure occurred.
- Definition Classes
- JUnitSuiteLike → Suite
- final def runNestedSuites(args: Args): Status
Throws
UnsupportedOperationException
, because this method is unused by this trait, given this trait'srun
method delegates to JUnit to run its tests.Throws
UnsupportedOperationException
, because this method is unused by this trait, given this trait'srun
method delegates to JUnit to run its tests.The main purpose of this method implementation is to render a compiler error an attempt to mix in a trait that overrides
runNestedSuites
. Because this trait does not actually userunNestedSuites
, the attempt to mix in behavior would very likely not work.- args
the
Args
for this run
- Attributes
- protected
- Definition Classes
- JUnitSuiteLike → Suite
- Exceptions thrown
UnsupportedOperationException
always.
- final def runTest(testName: String, args: Args): Status
Throws
UnsupportedOperationException
, because this method is unused by this trait, given this traits'srun
method delegates to JUnit to run its tests.Throws
UnsupportedOperationException
, because this method is unused by this trait, given this traits'srun
method delegates to JUnit to run its tests.The main purpose of this method implementation is to render a compiler error an attempt to mix in a trait that overrides
runTest
. Because this trait does not actually userunTest
, the attempt to mix in behavior would very likely not work.- testName
the name of one test to run.
- args
the
Args
for this run
- Attributes
- protected
- Definition Classes
- JUnitSuiteLike → Suite
- Exceptions thrown
UnsupportedOperationException
always.
- final def runTests(testName: Option[String], args: Args): Status
Throws
UnsupportedOperationException
, because this method is unused by this trait, given this trait'srun
method delegates to JUnit to run its tests.Throws
UnsupportedOperationException
, because this method is unused by this trait, given this trait'srun
method delegates to JUnit to run its tests.The main purpose of this method implementation is to render a compiler error an attempt to mix in a trait that overrides
runTests
. Because this trait does not actually userunTests
, the attempt to mix in behavior would very likely not work.- testName
an optional name of one test to run. If
None
, all relevant tests should be run. I.e.,None
acts like a wildcard that means run all relevant tests in thisSuite
.- args
the
Args
for this run
- Attributes
- protected
- Definition Classes
- JUnitSuiteLike → Suite
- Exceptions thrown
UnsupportedOperationException
always.
- final val succeed: Assertion
- Definition Classes
- Assertions
- def suiteId: String
- Definition Classes
- Suite
- def suiteName: String
- Definition Classes
- Suite
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def tags: Map[String, Set[String]]
Overrides to return just tests that have org.junit.Ignore on them, but calls it org.scalatest.Ignore.
Overrides to return just tests that have org.junit.Ignore on them, but calls it org.scalatest.Ignore. It also auto-tags suite level annotation.
- Definition Classes
- JUnitSuiteLike → Suite
- def testDataFor(testName: String, theConfigMap: ConfigMap = ConfigMap.empty): TestData
Overrides to retrieve suite and test tags from annotations.
Overrides to retrieve suite and test tags from annotations.
- testName
the name of the test for which to return a
TestData
instance- theConfigMap
the config map to include in the returned
TestData
- returns
a
TestData
instance for the specified test, which includes the specified config map
- Definition Classes
- JUnitSuiteLike → Suite
- def testNames: Set[String]
Returns the set of test names that will be executed by JUnit when
run
is invoked on an instance of this class, or the instance is passed directly to JUnit for running.Returns the set of test names that will be executed by JUnit when
run
is invoked on an instance of this class, or the instance is passed directly to JUnit for running.The iterator obtained by invoking
elements
on this returnedSet
will produce the test names in their natural order, as determined byString
'scompareTo
method. Nevertheless, this method is not consulted by JUnit when it runs the tests, and JUnit may run the tests in any order.- Definition Classes
- JUnitSuiteLike → Suite
- def toExceptionFunction(message: Option[String]): (StackDepthException) => Option[String]
If message or message contents are null, throw a null exception, otherwise create a function that returns the option.
If message or message contents are null, throw a null exception, otherwise create a function that returns the option.
- Definition Classes
- AssertionsForJUnit
- def toString(): String
- Definition Classes
- AnyRef → Any
- def typeCheckedConstraint[A, B](implicit equivalenceOfA: Equivalence[A], ev: <:<[B, A]): CanEqual[A, B]
- Definition Classes
- TripleEquals → TripleEqualsSupport
- implicit def unconstrainedEquality[A, B](implicit equalityOfA: Equality[A]): CanEqual[A, B]
- Definition Classes
- TripleEquals → TripleEqualsSupport
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- def withClue[T](clue: Any)(fun: => T): T
- Definition Classes
- Assertions
Deprecated Value Members
- def conversionCheckedConstraint[A, B](implicit equivalenceOfA: Equivalence[A], cnv: (B) => A): CanEqual[A, B]
- Definition Classes
- TripleEquals → TripleEqualsSupport
- Annotations
- @deprecated
- Deprecated
(Since version 3.1.0) The conversionCheckedConstraint method has been deprecated and will be removed in a future version of ScalaTest. It is no longer needed now that the deprecation period of ConversionCheckedTripleEquals has expired. It will not be replaced.
- def convertEquivalenceToAToBConversionConstraint[A, B](equivalenceOfB: Equivalence[B])(implicit ev: (A) => B): CanEqual[A, B]
- Definition Classes
- TripleEquals → TripleEqualsSupport
- Annotations
- @deprecated
- Deprecated
(Since version 3.1.0) The convertEquivalenceToAToBConversionConstraint method has been deprecated and will be removed in a future version of ScalaTest. It is no longer needed now that the deprecation period of ConversionCheckedTripleEquals has expired. It will not be replaced.
- def convertEquivalenceToBToAConversionConstraint[A, B](equivalenceOfA: Equivalence[A])(implicit ev: (B) => A): CanEqual[A, B]
- Definition Classes
- TripleEquals → TripleEqualsSupport
- Annotations
- @deprecated
- Deprecated
(Since version 3.1.0) The convertEquivalenceToBToAConversionConstraint method has been deprecated and will be removed in a future version of ScalaTest. It is no longer needed now that the deprecation period of ConversionCheckedTripleEquals has expired. It will not be replaced.
- def lowPriorityConversionCheckedConstraint[A, B](implicit equivalenceOfB: Equivalence[B], cnv: (A) => B): CanEqual[A, B]
- Definition Classes
- TripleEquals → TripleEqualsSupport
- Annotations
- @deprecated
- Deprecated
(Since version 3.1.0) The lowPriorityConversionCheckedConstraint method has been deprecated and will be removed in a future version of ScalaTest. It is no longer needed now that the deprecation period of ConversionCheckedTripleEquals has expired. It will not be replaced.
- val styleName: String
- Definition Classes
- Suite
- Annotations
- @deprecated
- Deprecated
(Since version 3.1.0) The styleName lifecycle method has been deprecated and will be removed in a future version of ScalaTest with no replacement.