Class: Cucumber::Ast::Examples

Inherits:
Object
  • Object
show all
Defined in:
lib/cucumber/ast/examples.rb

Overview

:nodoc:

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(comment, line, keyword, name, outline_table) ⇒ Examples

Returns a new instance of Examples.



6
7
8
# File 'lib/cucumber/ast/examples.rb', line 6

def initialize(comment, line, keyword, name, outline_table)
  @comment, @keyword, @name, @outline_table = comment, keyword, name, outline_table
end

Instance Attribute Details

#outline_table=(value) ⇒ Object (writeonly)

Sets the attribute outline_table

Parameters:

  • value

    the value to set the attribute outline_table to.



4
5
6
# File 'lib/cucumber/ast/examples.rb', line 4

def outline_table=(value)
  @outline_table = value
end

Instance Method Details

#accept(visitor) ⇒ Object



10
11
12
13
14
15
# File 'lib/cucumber/ast/examples.rb', line 10

def accept(visitor)
  return if Cucumber.wants_to_quit
  visitor.visit_comment(@comment) unless @comment.empty?
  visitor.visit_examples_name(@keyword, @name)
  visitor.visit_outline_table(@outline_table)
end

#each_example_row(&proc) ⇒ Object



21
22
23
# File 'lib/cucumber/ast/examples.rb', line 21

def each_example_row(&proc)
  @outline_table.cells_rows[1..-1].each(&proc)
end

#failed?Boolean

Returns:

  • (Boolean)


25
26
27
# File 'lib/cucumber/ast/examples.rb', line 25

def failed?
  @outline_table.cells_rows[1..-1].select{|row| row.failed?}.any?
end

#skip_invoke!Object



17
18
19
# File 'lib/cucumber/ast/examples.rb', line 17

def skip_invoke!
  @outline_table.skip_invoke!
end

#to_sexpObject



29
30
31
32
33
34
35
# File 'lib/cucumber/ast/examples.rb', line 29

def to_sexp
  sexp = [:examples, @keyword, @name]
  comment = @comment.to_sexp
  sexp += [comment] if comment
  sexp += [@outline_table.to_sexp]
  sexp
end