declaration of Fragments from the user
declaration of Fragments from the user
an example factory which will take the stored results and make them the example result
format a list of fragments according to their formatting tags
format a list of fragments according to their formatting tags
specName provides useful information identifying the specification: title, className, url.
specName provides useful information identifying the specification: title, className, url...
automatically convert a specification to its identification
automatically convert a specification to its identification
we force the specification to be isolated if it's not sequential or already isolated.
we force the specification to be isolated if it's not sequential or already isolated. this is important because when an example runs, its results are being stored into a shared list
a Result having its location as part of its message
create a new Context with the list of captured results.
create a new Context with the list of captured results.
This method could be overridden to filter the captured results and remove the skipped results for example
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.