org.specs2.specification.script

Type members

Classlikes

Analyse a piece of text and group Fragments belonging to the same group

Analyse a piece of text and group Fragments belonging to the same group

abstract class DelimitedStepParser[T](regex: Regex) extends StepParser[T]

A Delimited step parser uses a delimiter ({} by default) to know which string to extract from the text

A Delimited step parser uses a delimiter ({} by default) to know which string to extract from the text

class DelimitedStepParser1[T](f: String => T, regex: Regex) extends DelimitedStepParser[T]
class DelimitedStepParser10[T](f: (String, String, String, String, String, String, String, String, String, String) => T, regex: Regex) extends DelimitedStepParser[T]
class DelimitedStepParser2[T](f: (String, String) => T, regex: Regex) extends DelimitedStepParser[T]
class DelimitedStepParser3[T](f: (String, String, String) => T, regex: Regex) extends DelimitedStepParser[T]
class DelimitedStepParser4[T](f: (String, String, String, String) => T, regex: Regex) extends DelimitedStepParser[T]
class DelimitedStepParser5[T](f: (String, String, String, String, String) => T, regex: Regex) extends DelimitedStepParser[T]
class DelimitedStepParser6[T](f: (String, String, String, String, String, String) => T, regex: Regex) extends DelimitedStepParser[T]
class DelimitedStepParser7[T](f: (String, String, String, String, String, String, String) => T, regex: Regex) extends DelimitedStepParser[T]
class DelimitedStepParser8[T](f: (String, String, String, String, String, String, String, String) => T, regex: Regex) extends DelimitedStepParser[T]
class DelimitedStepParser9[T](f: (String, String, String, String, String, String, String, String, String) => T, regex: Regex) extends DelimitedStepParser[T]
class DelimitedStepParserSeq[T](f: Seq[String] => T, regex: Regex) extends DelimitedStepParser[T]
case class FragmentsScriptLines(blocks: Vector[FragmentsSeq]) extends ScriptLines

Block of fragments

Block of fragments

case class FragmentsSeq(fs: Vector[Fragment])

List of fragments with utility functions to manipulate it

List of fragments with utility functions to manipulate it

Companion:
object
Companion:
class
case class GroupsScript(title: String, isStart: Boolean, groups: GroupsLike)(implicit template: ScriptTemplate[GroupsScript, FragmentsScriptLines], factory: FragmentFactory) extends Script

This script associates lines extracted by a template to example bodies defined by a GroupsLike trait.

This script associates lines extracted by a template to example bodies defined by a GroupsLike trait.

It can be called several times with a groupIndex and exampleIndex to know exactly which groups and examples it should start associating

trait Script

A Script is responsible for analysing a piece of text an creating a sequence of fragments.

A Script is responsible for analysing a piece of text an creating a sequence of fragments.

It usually uses a ScriptTemplate specifying how to parse the text into block of lines that the Script knows how to transform to fragments.

For example a GWT script (a Scenario) stores functions to create Given/When/Then steps and examples and the LastLinesScriptTemplate extract the last lines of a piece of text and divides them into blocks of Given/When/Then lines based on the number of steps in the Scenario.

set of lines returned by a ScriptTemplate

set of lines returned by a ScriptTemplate

A ScriptTemplate parses some text to create ScriptLines that the associated script knows how to translate to Fragments.

A ScriptTemplate parses some text to create ScriptLines that the associated script knows how to translate to Fragments.

For example a script.Specification has a Script which takes text and asks the BulletedExamplesTemplate to return FragmentsScriptLines containing Text fragments for normal text and Examples for text that's starting with +

trait Scripts

The Scripts trait builds fragments based on Script objects.

The Scripts trait builds fragments based on Script objects.

When the script starts, a section tag is inserted and when it ends another one as well. Also when the scripts ends, it is passed the previous text for analysis to extract new fragments

abstract class Spec extends SpecLike
trait SpecLike extends Spec with Scripts with GroupsLike

Trait for the script.Spec abstract class

Trait for the script.Spec abstract class

abstract class Specification extends SpecificationLike

This Specification trait is using a Script (GroupScript) and a default template BulletedExamplesTemplate to associate extracted examples text (where there are + signs) to example bodies coming from a Group. tod

This Specification trait is using a Script (GroupScript) and a default template BulletedExamplesTemplate to associate extracted examples text (where there are + signs) to example bodies coming from a Group. tod

Trait for the script.Specification abstract class

Trait for the script.Specification abstract class

a few delimited parsers (with {}) to extract ints, doubles and strings

a few delimited parsers (with {}) to extract ints, doubles and strings

Companion:
object

a few regular expression parsers to extract ints, doubles and strings (strings are delimited with ")

a few regular expression parsers to extract ints, doubles and strings (strings are delimited with ")

Companion:
object
trait StepParser[T]

A StepParser is a function to extract a value of type T from a piece of text It can also strip the text from delimiters if any

A StepParser is a function to extract a value of type T from a piece of text It can also strip the text from delimiters if any

Companion:
object
object StepParser extends StepParsers
Companion:
class
trait StepParsers extends ImplicitParameters

StepParsers are using delimiters or regular expressions with groups to extract values from a piece of text and possibly strip it from delimiters if necessary

StepParsers are using delimiters or regular expressions with groups to extract values from a piece of text and possibly strip it from delimiters if necessary

Companion:
object
object StepParsers extends StepParsers
Companion:
class