Sha256: bfedac4bbed27d7a6f9cf64ca808b11c106150fc53de8cc72ec36aa3940dff54

Contents?: true

Size: 490 Bytes

Versions: 18

Compression:

Stored size: 490 Bytes

Contents

module Gherkin
  class SexpRecorder
    def initialize
      @sexps = []
    end

    def method_missing(m, *args)
      args[0] = args[0].map{|row| row.map{|cell| cell}} if m == :table
      @sexps << [m] + args
    end

    def to_sexp
      @sexps
    end

    # Useful in IRB
    def reset!
      @sexps = []
    end

    def errors
      @sexps.select { |sexp| sexp[0] == :syntax_error }
    end

    def line(number)
      @sexps.find { |sexp| sexp.last == number }
    end
  end
end

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
gherkin-1.0.2-i386-mswin32 spec/gherkin/sexp_recorder.rb
gherkin-1.0.2-i386-mingw32 spec/gherkin/sexp_recorder.rb
gherkin-1.0.2-java spec/gherkin/sexp_recorder.rb
gherkin-1.0.2 spec/gherkin/sexp_recorder.rb
gherkin-1.0.1-i386-mswin32 spec/gherkin/sexp_recorder.rb
gherkin-1.0.1-i386-mingw32 spec/gherkin/sexp_recorder.rb
gherkin-1.0.1-universal-java-1.5 spec/gherkin/sexp_recorder.rb
gherkin-1.0.1 spec/gherkin/sexp_recorder.rb
gherkin-1.0.0-i386-mingw32 spec/gherkin/sexp_recorder.rb
gherkin-1.0.0-i386-mswin32 spec/gherkin/sexp_recorder.rb
gherkin-1.0.0-universal-java-1.5 spec/gherkin/sexp_recorder.rb
gherkin-1.0.0 spec/gherkin/sexp_recorder.rb
gherkin-0.0.4-universal-java-1.5 spec/gherkin/sexp_recorder.rb
gherkin-0.0.4-i386-mswin32 spec/gherkin/sexp_recorder.rb
gherkin-0.0.4-i386-mingw32 spec/gherkin/sexp_recorder.rb
gherkin-0.0.4 spec/gherkin/sexp_recorder.rb
gherkin-0.0.3-universal-java-1.5 spec/gherkin/sexp_recorder.rb
gherkin-0.0.3 spec/gherkin/sexp_recorder.rb