org.scalatest.fixture.UnitFixture.scala Maven / Gradle / Ivy
The newest version!
/*
* Copyright 2001-2013 Artima, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.scalatest.fixture
import org.scalatest._
/**
* Trait that when mixed into a FixtureSuite
passes
* the unit value as a fixture into each test.
*
*
* Since a unit value is unlikely to be of much use to a test, this trait is useful
* when the unit value fixture is actually never passed into any tests. Instead
* each test in the FixtureSuite
is defined as a no-arg function; no tests are defined as one-arg functions.
* This should be quite rare, but occasionally can be useful.
* For an example, see the main documentation for trait NoArg
.
*
*/
trait UnitFixture { this: FixtureTestSuite =>
/**
* The type of the fixture, which is Unit
.
*/
type FixtureParam = Unit
/**
* Invoke the test function, passing ()
, the unit value, to the the test function.
*
*
* To enable stacking of traits that define withFixture(NoArgTest)
, this method does not
* invoke the test function directly. Instead, it delegates responsibility for invoking the test function
* to withFixture(NoArgTest)
.
*
*
* @param test the OneArgTest
to invoke, passing in the unit value
* @return an Outcome
instance
*/
def withFixture(test: OneArgTest): Outcome = {
withFixture(test.toNoArgTest(()))
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy