Serenity
|
- |
constructs a Stage and connects it with a provided Cast
|
- |
enables propagation of DomainEvents triggered by Actors' Activities and StageCrewMembers
|
- |
allows for external parties, such as test runner adapters, to announce DomainEvents
|
- |
RuntimeError
|
- |
subclass
|
- |
is recognised as an instance of its type
|
RuntimeError |
has a message
|
RuntimeError |
retains the stacktrace
|
RuntimeError |
when propagating errors
|
- |
includes the stack trace of the original errors
|
RuntimeError |
ErrorSerialiser
|
- |
serialises an Error object to JSON
|
ErrorSerialiser |
deserialises a serialised Error object from JSON
|
ErrorSerialiser |
serialises a custom Error object to JSON
|
ErrorSerialiser |
deserialises a serialised custom Error object from JSON
|
ErrorSerialiser |
deserialises the error object from a stack trace alone (Cucumber event protocol)
|
ErrorSerialiser |
deserialises the error object from a string (Cucumber event protocol)
|
ErrorSerialiser |
FileFinder
|
FileFinder |
spec/io/FileFinder.spec.ts |
FileFinder |
returns a list with an exact match
|
FileFinder |
returns a list with exact matches
|
FileFinder |
supports glob patterns
|
FileFinder |
supports globstar patterns
|
FileFinder |
FileSystem
|
FileSystem |
when storing JSON files
|
- |
stores a JSON file in a desired location
|
- |
tells the absolute path to a JSON file once it is saved
|
- |
spec/io/FileSystem.spec.ts |
- |
when storing pictures
|
- |
stores a base64-encoded picture at a desired location
|
- |
tells the absolute path to a JSON file once it is saved
|
- |
when removing
|
- |
individual files
|
- |
removes the file
|
- |
directories
|
- |
removes the directory recursively
|
- |
FileSystemLocation
|
FileSystemLocation |
ModuleLoader
|
- |
returns the version number of a given package
|
- |
returns the version of the npm-resolved package if the local package could not be found
|
- |
complains if neither a local version or the npm-resolved version could not be found
|
- |
when checking if a given module is available to be required
|
- |
returns true if the module is available
|
- |
returns false if the module is not available
|
- |
Path
|
- |
when used across different operating systems
|
- |
produces the same result no matter what path it's instantiated with
|
Path |
exposes the normalised path string
|
Path |
splits the same
|
Path |
can be serialised and deserialised
|
Path |
can join path components into a single path
|
Path |
can be instantiated from path segments
|
Path |
can split an absolute path
|
Path |
can split a relative path
|
Path |
can resolve two paths
|
Path |
knows the root directory
|
Path |
spec/io/Path.spec.ts |
Path |
Version
|
- |
represents a comparable version number
|
- |
grants access to the major version number
|
- |
provides a sensible description
|
- |
commaSeparated
|
- |
returns an empty string for an empty list
|
- |
formatted tag function
|
formatted |
produces a human-readable description when given a template with multiple parameters
|
formatted |
cycle
|
- |
when used with primitives
|
- |
stringify
|
- |
parse
|
- |
when used with acyclic objects
|
- |
stringify
|
- |
parse
|
- |
when used with cyclic objects
|
- |
JSON.stringify
|
- |
should fail because of a circular reference in a round robin list
|
- |
should fail because of a circular reference in simple nested object
|
- |
should fail because of a circular reference in complex nested object
|
- |
should fail because of a cycles in object with parallel references
|
- |
stringify
|
- |
should serialise a round robin list data structure
|
- |
should serialise a simple nested object
|
- |
should serialise a complex nested object
|
- |
should serialise an object with parallel references
|
- |
parse
|
- |
should deserialise a round robin list data structure
|
- |
should deserialise a simple nested object
|
- |
should deserialise a complex nested object
|
- |
should deserialise an object with parallel references
|
- |
trimmed tag function
|
- |
trims the leading and trailing whitespace
|
trimmed |
leaves the space between the lines if required
|
trimmed |
trims padded multi-line string
|
trimmed |
Artifact
|
- |
Photo
|
- |
can be serialised
|
Photo#toJSON |
can be de-serialised
|
Photo#toJSON
Artifact.fromJSON |
allows for its value to be extracted as a Buffer
|
Photo#map
Photo#base64EncodedValue |
can be instantiated from a Buffer
|
Photo.fromBuffer |
JSONData
|
- |
can be serialised
|
JSONData#toJSON |
can be de-serialised
|
JSONData#toJSON
Artifact.fromJSON |
allows for its value to be extracted as a JSON value
|
JSONData#map
JSONData#base64EncodedValue |
Duration
|
Duration |
represents a duration of time that
|
- |
when performing computations
|
- |
allows for durations to be added
|
- |
when comparing
|
- |
ScenarioParameters
|
- |
can be instantiated using a plain-old JavaScript object
|
ScenarioParameters |
can be serialised to JSON
|
ScenarioParameters |
can be deserialised from JSON
|
ScenarioParameters |
Tag
|
Tag
ArbitraryTag
BrowserTag
CapabilityTag
ContextTag
FeatureTag |
Timestamp
|
Timestamp |
instantiation
|
- |
can be instantiated with an arbitrary Date
|
Timestamp |
defaults to current time if no argument is provided
|
Timestamp |
serialisation
|
- |
is serialised to an ISO-8601-compliant string
|
Timestamp |
can be deserialised from an ISO-8601-compliant string
|
Timestamp |
arithmetic
|
- |
allows for calculating a difference between two timestamps
|
Timestamp |
allows for computing another timestamp, relative to the original one
|
Timestamp |
conversion
|
- |
can be converted to a numeric unix timestamp
|
Timestamp |
can be created from a numeric unix timestamp
|
Timestamp |
Outcome
|
Outcome |
non-error outcome
|
ExecutionSkipped
ExecutionIgnored
ImplementationPending
ExecutionSuccessful |
outcome indicating an error
|
ExecutionCompromised
ExecutionFailedWithError
ExecutionFailedWithAssertionError |
Interaction
|
- |
when defining an interaction
|
- |
provides a convenient factory method for synchronous interactions
|
Interaction |
provides a convenient factory method for asynchronous interactions
|
Interaction |
when handling errors
|
- |
rejects the promise when the interaction function rejects a promise
|
- |
rejects the promise when the interaction function throws an error
|
- |
can optionally emit an artifact to be attached to the report or stored
|
Interaction |
Question
|
Question |
provides a convenient way to define a custom question that
|
- |
returns a static value
|
Question.about |
returns a Promise of a value
|
Question.about |
has a description
|
Question#toString |
allows for a custom description to override the default one
|
Question#describedAs |
when mapping the answer
|
- |
works with a static value
|
Question#map |
works with a promise
|
Question#map |
works with a static list of values
|
Question#map |
works with a promised list
|
Question#map |
works with a mappable collection (Array, ElementArrayFinder, etc.)
|
Question#map |
Task
|
- |
provides a convenient factory method for defining tasks
|
Task |
provides a way to describe a collection of activities
|
Task |
generates a pending task if no activities are provided
|
Task |
TakeNotes
|
TakeNotes |
usingAnEmptyNotepad
|
TakeNotes.usingAnEmptyNotepad |
enables the actor to take note of an answer to a given question and recall it later
|
TakeNotes.usingAnEmptyNotepad
Note
TakeNote |
enables the actor to take note of an answer to a given question under a custom name
|
TakeNotes.usingAnEmptyNotepad
Note
TakeNote |
spec/screenplay/abilities/TakeNotes.spec.ts |
TakeNotes.usingAnEmptyNotepad
Note
TakeNote |
spec/screenplay/abilities/TakeNotes.spec.ts |
TakeNotes.usingAnEmptyNotepad
Note
TakeNote |
usingASharedNotepad
|
TakeNotes.usingASharedNotepad |
enables the actor to take note of an answer to a given question and recall it later
|
TakeNotes.usingASharedNotepad
Note
TakeNote |
spec/screenplay/abilities/TakeNotes.spec.ts |
TakeNotes.usingASharedNotepad
Note
TakeNote |
spec/screenplay/abilities/TakeNotes.spec.ts |
TakeNotes.usingASharedNotepad
Note
TakeNote |
Actor
|
- |
can be identified by their name
|
Actor |
provides a developer-friendly toString
|
Actor |
has Abilities allowing them to perform Activities and interact with a given interface of the system under test
|
Actor |
performs composite Tasks recursively to accomplish their Business Goals
|
Actor |
asks Questions about the state of the system
|
- |
fulfills the promise should the question be answered as expected
|
Actor |
rejects the promise should the answer differ from what was expected
|
Actor |
when using abilities
|
- |
admits if it does not have the Ability necessary to accomplish a given Interaction
|
Actor |
complains if given the same ability twice
|
Actor |
that have to be initialised
|
- |
initialises them upon the first call to attemptsTo
|
Actor |
spec/screenplay/actor.spec.ts |
Actor |
spec/screenplay/actor.spec.ts |
Actor |
DomainEvent handling
|
- |
announces the events that activities it performs
|
- |
notifies when an activity begins and ends
|
Actor |
Interactions
|
- |
See
|
- |
when used with async questions
|
- |
allows the actor to verify a condition
|
See |
rejects the promise if the condition is not met
|
See |
when used with sync questions
|
- |
allows the actor to verify a condition
|
See |
rejects the promise if the condition is not met
|
See |
Note
|
- |
enables the actor to recall the answer to a given question
|
TakeNotes
Note |
enables the actor to recall the answer on a given subject
|
TakeNotes
Note |
complains if no answer to a given question has ever been remembered
|
TakeNotes
Note |
complains if no answer on a given subject has ever been remembered
|
TakeNotes
Note |
TransformAnswer
|
TransformAnswer |
transforms answers to Array<Answerable<T>> to another type
|
- |
transforms answers to questions of different types to another type
|
- |
provides a sensible default description
|
- |
allows for the default description to be changed
|
- |
append
|
Question#map |
allows for a string to be appended to the original answer
|
append |
allows for a Promise<string> to be appended to the original answer
|
append |
allows for a Question<string> to be appended to the original answer
|
append |
allows for a Question<Promise<string>> to be appended to the original answer
|
append |
normalize
|
Question#map |
replace
|
Question#map |
slice
|
Question#map |
extracts the part of the string from startIndex to endIndex
|
slice |
split
|
Question#map |
can limit the number of substrings returned
|
split |
toLocaleLowerCase
|
Question#map |
toLocaleUpperCase
|
Question#map |
toLowerCase
|
Question#map |
toUpperCase
|
Question#map |
trim
|
Question#map |
q
|
q |
returns the original string value if no parameters are provided
|
q |
provides a sensible description of the question being asked
|
q |
can have the default description overridden
|
q |
Loop
|
Loop |
spec/screenplay/tasks/Loop.spec.ts |
- |
Stage
|
- |
provides both the more verbose and more concise way of accessing the actors
|
Stage#actor
Stage#theActorCalled |
when instantiating actors
|
- |
instantiates a new actor when their name is called for the first time
|
Stage#actor |
returns an existing actor if it has already been instantiated before
|
Stage#actor |
when referencing a recently retrieved actor
|
- |
retrieves the current actor, if there is any
|
Stage#actor |
provides both the more verbose and more concise way of accessing the actors in the spotlight
|
Stage#theActorInTheSpotlight
Stage#theActorInTheSpotlight |
spec/stage/Stage.spec.ts |
Stage#theActorInTheSpotlight
Stage#theActorInTheSpotlight |
when instantiating and dismissing the actors
|
- |
performing a single scene
|
- |
dismisses actors instantiated after SceneStarts when SceneFinished
|
- |
re-instantiates actors dismissed when the SceneFinished
|
- |
performing across multiple scenes
|
- |
dismisses actors instantiated before SceneStarts when TestRunFinishes
|
- |
retains instances of actors instantiated before the SceneStarts
|
- |
when correlating activities
|
- |
assigns sceneIds
|
- |
returns a default sceneId when activities are performed outside of a test runner
|
- |
assigns activityIds
|
- |
complains if an activityId is attempted to be retrieved before is has been assigned
|
- |
when an error occurs
|
- |
complains when instantiated with no Cast
|
- |
complains when instantiated with no StageManager
|
- |
complains if the Cast does not provide a way to instantiate a given actor
|
Stage#actor |
complains if the Cast does not provide a way to prepare a given actor and mentions the type of the Cast, when available
|
Stage#actor |
complains if the Cast throws an error during actor instantiation
|
Stage#actor |
complains if the Cast throws an error during actor instantiation and mentions the type of the Cast, when available
|
Stage#actor |
StageManager
|
- |
broadcasts the domain event it receives to all the registered subscribers
|
StageManager |
keeps track of the work in progress
|
StageManager
AsyncOperationAttempted
AsyncOperationCompleted |
provides details should the work in progress fail to complete
|
StageManager
AsyncOperationAttempted |
provides details should the work in progress fail with an error
|
StageManager
AsyncOperationAttempted
AsyncOperationFailed |
ArtifactArchiver
|
ArtifactArchiver |
stores the artifacts generated by other stage crew members
|
- |
notifies the StageManager when an artifact is saved so that the promise of a stage cue can be fulfilled
|
ArtifactArchiver
ArtifactGenerated |
notifies the StageManager when an artifact cannot be saved so that the promise of a stage cue can be rejected
|
ArtifactArchiver
ArtifactGenerated |
correctly saves the test report to a unique file
|
ArtifactArchiver
ArtifactGenerated |
correctly saves PNG content to a file
|
ArtifactArchiver
ArtifactGenerated |
spec/stage/crew/artifact-archiver/ArtifactArchiver.spec.ts |
ArtifactArchiver
ArtifactGenerated |
spec/stage/crew/artifact-archiver/ArtifactArchiver.spec.ts |
- |
ignores them
|
ArtifactArchiver |
notifies the StageManager when the artifact is correctly archived
|
ArtifactArchiver
ArtifactGenerated
ArtifactArchived |
when instantiated using a factory method
|
- |
joins the path segments provided so that the developer doesn't need to worry about cross-OS compatibility of the path
|
- |
complains if the destination is not provided
|
- |
StreamReporter
|
StreamReporter |
prints the events it receives to output stream
|
StreamReporter |