Sha256: 6b146118d808550f5ac8984808b4eab44a0506bdbbdce7cc64451f9a92f69857

Contents?: true

Size: 1.93 KB

Versions: 30

Compression:

Stored size: 1.93 KB

Contents

require 'gherkin/native'

module Gherkin
  module Formatter
    module Model
      class Comment
        native_impl('gherkin')

        attr_reader :value, :line
        
        def initialize(value, line)
          @value, @line = value, line
        end
      end

      class Tag
        native_impl('gherkin')

        attr_reader :name, :line
        
        def initialize(name, line)
          @name, @line = name, line
        end
        
        def eql?(tag)
          @name.eql?(tag.name)
        end

        def hash
          @name.hash
        end
      end

      class PyString
        native_impl('gherkin')

        attr_reader :value, :line
        
        def initialize(value, line)
          @value, @line = value, line
        end

        def line_range
          line_count = value.split(/\r?\n/).length
          line..(line+line_count+1)
        end
      end

      class Row
        native_impl('gherkin')

        attr_reader :comments, :cells, :line

        def initialize(comments, cells, line)
          @comments, @cells, @line = comments, cells, line
        end
      end

      class Statement
        native_impl('gherkin')

        attr_reader :comments, :tags, :keyword, :name, :description, :line
        
        def initialize(comments, tags, keyword, name, description, line)
          @comments, @tags, @keyword, @name, @description, @line = comments, tags, keyword, name, description, line
        end

        def line_range
          first = @comments[0] ? @comments[0].line : (@tags[0] ? @tags[0].line : line)
          first..line
        end
      end

      class Result
        native_impl('gherkin')

        attr_reader :status, :error_message, :arguments, :stepdef_location
        
        def initialize(status, error_message, arguments, stepdef_location)
          @status, @error_message, @arguments, @stepdef_location = status, error_message, arguments, stepdef_location
        end
      end
    end
  end
end

Version data entries

30 entries across 30 versions & 1 rubygems

Version Path
gherkin-2.1.5 lib/gherkin/formatter/model.rb
gherkin-2.1.5-i386-mswin32 lib/gherkin/formatter/model.rb
gherkin-2.1.5-i386-mingw32 lib/gherkin/formatter/model.rb
gherkin-2.1.5-universal-dotnet lib/gherkin/formatter/model.rb
gherkin-2.1.5-java lib/gherkin/formatter/model.rb
gherkin-2.1.4 lib/gherkin/formatter/model.rb
gherkin-2.1.4-i386-mswin32 lib/gherkin/formatter/model.rb
gherkin-2.1.4-i386-mingw32 lib/gherkin/formatter/model.rb
gherkin-2.1.4-universal-dotnet lib/gherkin/formatter/model.rb
gherkin-2.1.4-java lib/gherkin/formatter/model.rb
gherkin-2.1.3 lib/gherkin/formatter/model.rb
gherkin-2.1.3-i386-mswin32 lib/gherkin/formatter/model.rb
gherkin-2.1.3-i386-mingw32 lib/gherkin/formatter/model.rb
gherkin-2.1.3-universal-dotnet lib/gherkin/formatter/model.rb
gherkin-2.1.3-java lib/gherkin/formatter/model.rb
gherkin-2.1.2 lib/gherkin/formatter/model.rb
gherkin-2.1.2-i386-mswin32 lib/gherkin/formatter/model.rb
gherkin-2.1.2-i386-mingw32 lib/gherkin/formatter/model.rb
gherkin-2.1.2-universal-dotnet lib/gherkin/formatter/model.rb
gherkin-2.1.2-java lib/gherkin/formatter/model.rb