Gherkin.Step (Cucumber v1.0.0)

View Source

Represents a Gherkin step (Given/When/Then/And/But/*).

A Step is a single action or assertion in a scenario. It consists of:

  • keyword: The step type (Given, When, Then, And, But, or *)
  • text: The step text that matches step definitions
  • docstring: Optional multi-line text block (delimited by """ or triple backticks)
  • docstring_media_type: Optional media type annotation on the opening docstring delimiter (e.g. json in """json)
  • datatable: Optional table data (pipe-delimited)
  • line: Line number in the source file

docstring_line, docstring_delimiter, and datatable_lines record the source line of the docstring's opening delimiter, the delimiter style used (""" or triple backticks), and each datatable row's line (parallel to datatable) for Cucumber Messages; the published docstring and datatable shapes are unchanged.

Summary

Types

t()

@type t() :: %Gherkin.Step{
  datatable: [[String.t()]] | nil,
  datatable_lines: [non_neg_integer()] | nil,
  docstring: String.t() | nil,
  docstring_delimiter: String.t() | nil,
  docstring_line: non_neg_integer() | nil,
  docstring_media_type: String.t() | nil,
  keyword: String.t(),
  line: non_neg_integer() | nil,
  text: String.t()
}