Les hooks globaux d'un run, cherchés une fois à son entrée - run-suite,
run-features - plutôt qu'à chaque scénario : le balayage parcourt toutes les
vars chargées. Sans run englobant, chaque appel les cherche, ce qui voit aussi
un hook ajouté au REPL entre deux appels.
Les hooks globaux d'un run, cherchés une fois à son entrée - `run-suite`, `run-features` - plutôt qu'à chaque scénario : le balayage parcourt toutes les vars chargées. Sans run englobant, chaque appel les cherche, ce qui voit aussi un hook ajouté au REPL entre deux appels.
(->feature-ast source options ns-feature)(->feature-ast source
{:keys [pre-run post-run pre-scenario-run post-scenario-run
default-scenario-state]
:as _options}
ns-feature
uri)uri names the feature in the cucumber messages - the file it was read from.
`uri` names the feature in the cucumber messages - the file it was read from.
(argument->params arg)The block argument of a pickle step - datatable or docstring - as a param
vector. Cells arrive trimmed and unescaped from the parser. A table is a
vector of maps keyed by its first row, carrying every row as written under
:scenari/cells in its metadata, for scenari.v2.table.
The block argument of a pickle step - datatable or docstring - as a param vector. Cells arrive trimmed and unescaped from the parser. A table is a vector of maps keyed by its first row, carrying every row as written under `:scenari/cells` in its metadata, for `scenari.v2.table`.
(defglue regex params & body)Defines a step: an ordinary var carrying the step's regex as :step metadata, there is no registry. The keyword a step was written with plays no part in the definition, so defgiven / defwhen / defthen / defand are four names for this one macro. Returns the var, like every other Clojure def*.
Defines a step: an ordinary var carrying the step's regex as :step metadata, there is no registry. The keyword a step was written with plays no part in the definition, so defgiven / defwhen / defthen / defand are four names for this one macro. Returns the var, like every other Clojure def*.
(define-parameter-type! type-name regex transform)Defines a {type-name} token for the sentence matchers. Its capture is
regex's match, converted by transform: one argument per capture group of
regex, or the whole match when it has none.
(define-parameter-type! "isbn" #"\d{13}" parse-isbn) (defgiven "the book {isbn}" [state isbn] ...)
Call it before loading the glues that use the token: a sentence is compiled
when its feature is parsed, and an unknown token raises there. Defining a
type again replaces it. Returns type-name.
Defines a `{type-name}` token for the sentence matchers. Its capture is
`regex`'s match, converted by `transform`: one argument per capture group of
`regex`, or the whole match when it has none.
(define-parameter-type! "isbn" #"\d{13}" parse-isbn)
(defgiven "the book {isbn}" [state isbn] ...)
Call it before loading the glues that use the token: a sentence is compiled
when its feature is parsed, and an unknown token raises there. Defining a
type again replaces it. Returns `type-name`.(global-hooks)Les vars marquées :scenari/hook dans les namespaces chargés, privées
comprises, par clé de hook-keys, dans l'ordre des namespaces puis des
lignes. Cherchées à l'exécution et pas au parsing : un namespace de hooks que
personne ne requiert peut se charger après les features.
Les vars marquées `:scenari/hook` dans les namespaces chargés, privées comprises, par clé de `hook-keys`, dans l'ordre des namespaces puis des lignes. Cherchées à l'exécution et pas au parsing : un namespace de hooks que personne ne requiert peut se charger après les features.
Les valeurs de :scenari/hook : ce qu'un hook global encadre.
Les valeurs de `:scenari/hook` : ce qu'un hook global encadre.
(re->symbol re)Le nom du var d'un glue, tiré de sa phrase. La barre oblique de l'alternance
complète/partielle en ferait un symbole qualifié, que defn refuse.
Le nom du var d'un glue, tiré de sa phrase. La barre oblique de l'alternance `complète/partielle` en ferait un symbole qualifié, que `defn` refuse.
(run-hooks x f)(run-hooks x f ->status)try-hooks, qui rend le retour de f et lève ce qu'un hook a levé.
`try-hooks`, qui rend le retour de f et lève ce qu'un hook a levé.
(run-scenario scenario)(run-scenario scenario failure)Le scénario une fois joué, entre ses hooks. Un hook qui lève en fait un
scénario :fail, qui porte l'exception sous :exception - ses steps restent
:pending si c'est un hook d'entrée. Avec failure, ce qu'un hook de sa
feature a levé, le scénario échoue de même sans rien jouer.
Le scénario une fois joué, entre ses hooks. Un hook qui lève en fait un scénario :fail, qui porte l'exception sous :exception - ses steps restent :pending si c'est un hook d'entrée. Avec `failure`, ce qu'un hook de sa feature a levé, le scénario échoue de même sans rien jouer.
(run-suite f)try-suite, qui rend le retour de f et lève ce qu'un hook a levé.
`try-suite`, qui rend le retour de f et lève ce qu'un hook a levé.
(try-hooks x f)(try-hooks {:keys [pre-run post-run] :as x} f ->status)Encadre f par les hooks :pre-run et :post-run de x - un scénario s'il a un :scenario-name, une feature sinon - et par les hooks globaux de ce niveau, en oignon : les globaux entrent avant ceux de x et sortent après eux.
Un hook à un argument reçoit le nom et les tags de x ; avec ->status, qui tire :success ou :fail du retour de f, les :post-run reçoivent aussi :status - :fail si f n'a pas tourné ou a levé.
Rend [r e], voir around : un hook qui lève ne lève pas ici, c'est à
l'appelant d'en faire l'échec de x.
Encadre f par les hooks :pre-run et :post-run de x - un scénario s'il a un :scenario-name, une feature sinon - et par les hooks globaux de ce niveau, en oignon : les globaux entrent avant ceux de x et sortent après eux. Un hook à un argument reçoit le nom et les tags de x ; avec ->status, qui tire :success ou :fail du retour de f, les :post-run reçoivent aussi :status - :fail si f n'a pas tourné ou a levé. Rend [r e], voir `around` : un hook qui lève ne lève pas ici, c'est à l'appelant d'en faire l'échec de x.
(try-suite f)Encadre f - toute la suite - par les hooks globaux :before-all et :after-all,
appelés sans tags : un hook à un argument reçoit une map vide. Rend [r e],
comme try-hooks : r est nil si un :before-all a levé.
Encadre f - toute la suite - par les hooks globaux :before-all et :after-all, appelés sans tags : un hook à un argument reçoit une map vide. Rend [r e], comme `try-hooks` : r est nil si un :before-all a levé.
(with-global-hooks f)Appelle f avec les hooks globaux résolus pour toute sa durée.
Appelle f avec les hooks globaux résolus pour toute sa durée.
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |