org.specs2.specification
Type members
Classlikes
The After trait can be inherited by classes representing a context where an action must be executing after the main executable action
The After trait can be inherited by classes representing a context where an action must be executing after the main executable action
- See also:
Example to understand why the type T must : AsResult
- Companion:
- object
Execute a step after all fragments
Execute a step after all fragments
For each created example use a given after action
For each created example use a given after action
Execute some fragments after all others
Execute some fragments after all others
This trait can be mixed-in a specification to allow examples to have all of their expectations being evaluated (unless the example body throws an exception of course).
This trait can be mixed-in a specification to allow examples to have all of their expectations being evaluated (unless the example body throws an exception of course).
All the results are collected into a list, provided by the StoredExpectations trait. These results form then the body of the each example (decorated by a special ExampleFactory) so that each example returns a Result which is the summary of all the individual issues.
It must be noted that this trait relies on a mutable list to collect the results as they are created in the example body. Because of this restriction, a Specification using that trait can either run sequentially or isolated.
If the specification is neither sequential or isolated, we force it to be isolated by default.
The Around trait can be inherited by classes which will execute some code inside the around method provided by the context.
The Around trait can be inherited by classes which will execute some code inside the around method provided by the context.
This can be used for example to execute some code inside a webapp session
- See also:
Example to understand why the type T must : AsResult
- Companion:
- object
For each created example use a given around action
For each created example use a given around action
The Before trait can be inherited by classes representing a context where an action must be executing before the main executable action
The Before trait can be inherited by classes representing a context where an action must be executing before the main executable action
- See also:
Example to understand why the type T must : AsResult
- Companion:
- object
Execute a step before and after all fragments
Execute a step before and after all fragments
For each created example use a given before action
For each created example use a given before action
Execute some fragments before and after all others
Execute some fragments before and after all others
Execute a step before all fragments
Execute a step before all fragments
For each created example use a given before action
For each created example use a given before action
Execute some fragments before all others
Execute some fragments before all others
generic trait for Before, After, Around
generic trait for Before, After, Around
- Companion:
- object
For each created example use a context using the command line arguments
For each created example use a context using the command line arguments
For each created example use a given context
For each created example use a given context
A Fixture can be implicitly passed to a set of examples taking a function as an input.
A Fixture can be implicitly passed to a set of examples taking a function as an input.
It can effectively act as a parameterized Around context
- Companion:
- object
For each created example use a given fixture object
For each created example use a given fixture object
For each example but inject data depending on command line arguments
For each example but inject data depending on command line arguments
This trait can be used to standardize names for groups of examples in an acceptance specification.
This trait can be used to standardize names for groups of examples in an acceptance specification.
class MySpecification extends Specification with Examples { def is = s2""" first example in first group ${g1.e1} second example in first group ${g1.e2}
first example in second group ${g2.e1} second example in second group ${g2.e2} """ }
trait Examples extends Grouped with Matchers { "first group of examples" - new g1 { e1 := ok e2 := ok } "second group of examples" - new g2 { e1 := ok e2 := ok } }
If you don't want to manage groups and examples numbers it is also possible to write the following (note the script.Specification
):
class MySpecification extends script.Specification with Examples { def is = s2""" first example in first group second example in first group
first example in second group second example in second group """ }
trait Examples extends Grouped with Matchers { "first group of examples" - new group { eg := ok eg := ok } "second group of examples" - new group { eg := ok eg := ok } }
This trait can be used to standardize names for groups of examples in an acceptance specification.
This trait can be used to standardize names for groups of examples in an acceptance specification.
class MySpecification extends Specification with Examples { def is = s2""" first example in first group ${g1().e1} second example in first group ${g1().e2}
first example in second group ${g2().e1} second example in second group ${g2().e2} """ }
trait Examples extends Groups with Matchers { "first group of examples" - new g1 { e1 := ok e2 := ok } "second group of examples" - new g2 { e1 := ok e2 := ok } }
It is important to notice that the examples must be called with g1().e1
so as to create a new g1
trait instance
with new local variables for the example e1
. If this is not required, the Grouped
trait can be used instead
If you don't want to manage groups and examples numbers it is also possible to write the following (note the script.Specification
):
class MySpecification extends script.Specification with Examples { def is = s2""" first example in first group second example in first group
first example in second group second example in second group """ }
trait Examples extends Groups with Matchers { "first group of examples" - new group { eg := ok eg := ok } "second group of examples" - new group { eg := ok eg := ok } }
This class is used to evaluate a Context as a sequence of results by side-effects.
This class is used to evaluate a Context as a sequence of results by side-effects.
- See also:
the AllExpectations trait for its use
Marker trait that is used to create a new scope with variables and implicitly converted to a Success in a mutable Specification
Marker trait that is used to create a new scope with variables and implicitly converted to a Success in a mutable Specification
Snippets of code can be extracted from interpolated specification strings.
Snippets of code can be extracted from interpolated specification strings.
When you want to specify that a piece of code must be included in the specification output, you can use the snippet
method to execute a this code and use the text in the output. If you just want to output part of the code you need to
delimit it with some comments // 8<-------
(with as many dashes as you want)
Generally the last value of a snippet will be displayed separately but it is possible to avoid this by using the mute
method on a Snippet.
It is also possible to check that the result value is equal to a specific value by using the check[R : AsResult](f: T => R)
method.
List of all the features which are being included the default Specification class:
List of all the features which are being included the default Specification class:
- matchers (with the expectations dsl and the most common matchers)
- standard results
- pending until fixed
- implicit parameters to overload some method calls
- .pp calls to print out some expressions
This trait can be used when it is not desirable to use the AllExpectations trait, that is, when the specification examples must be executed concurrently and not isolated.
This trait can be used when it is not desirable to use the AllExpectations trait, that is, when the specification examples must be executed concurrently and not isolated.
- See also:
the UserGuide on how to use this trait
This trait is a context which will use the results provided by the class inheriting that trait. It evaluates the result of an example, which is supposed to create side-effects and returns the 'storedResults' as the summary of all results
This trait is a context which will use the results provided by the class inheriting that trait. It evaluates the result of an example, which is supposed to create side-effects and returns the 'storedResults' as the summary of all results
This trait allows to use Data tables with simple ! as column separator when the first column is a string. However the syntax for creating examples with a String and a ! is deactivated
This trait allows to use Data tables with simple ! as column separator when the first column is a string. However the syntax for creating examples with a String and a ! is deactivated
- Companion:
- object