class Cucumber::Messages::GherkinDocument
#
“rich” output, resembling the original Gherkin document.
The only consumers of ‘GherkinDocument` should only be formatters that produce
children for execution - use [Pickle](#io.cucumber.messages.Pickle) instead.
Cucumber implementations should not depend on `GherkinDocument` or any of its
The [AST](en.wikipedia.org/wiki/Abstract_syntax_tree) of a Gherkin document.
*
#
Represents the GherkinDocument message in Cucumber’s message protocol.
#
def self.from_h(hash)
Cucumber::Messages::GherkinDocument.from_h(some_hash) # => #
corresponding snake_cased attributes.
If the hash keys are camelCased, they are properly assigned to the
Returns a new GherkinDocument from the given hash.
#
def self.from_h(hash) return nil if hash.nil? new( uri: hash[:uri], feature: Feature.from_h(hash[:feature]), comments: hash[:comments]&.map { |item| Comment.from_h(item) } ) end
def initialize(
def initialize( uri: nil, feature: nil, comments: [] ) @uri = uri @feature = feature @comments = comments super() end