Sha256: 46b5aa2ea2d7b4249bd28e4ddb0027bf24888a16a249412b50e2f6f3028e6311

Contents?: true

Size: 1.54 KB

Versions: 328

Compression:

Stored size: 1.54 KB

Contents

# encoding: utf-8
require 'spec_helper'
require 'gherkin/formatter/step_printer'
require 'gherkin/formatter/argument'
require 'stringio'

module Gherkin
  module Formatter
    class ParenthesisFormat
      def text(text)
        "(#{text})"
      end
    end
    
    class BracketFormat
      def text(text)
        "[#{text}]"
      end
    end
    
    describe StepPrinter do
      before do
        @io = StringIO.new
        @p = StepPrinter.new
        @pf = ParenthesisFormat.new
        @bf = BracketFormat.new
      end

      it "should replace 0 args" do
        @p.write_step(@io, @pf, @bf, "I have 10 cukes", [])
        @io.string.should == "(I have 10 cukes)"
      end

      it "should replace 1 arg" do
        @p.write_step(@io, @pf, @bf, "I have 10 cukes", [Argument.new(7, '10')])
        @io.string.should == "(I have )[10]( cukes)"
      end
      
      it "should replace 1 unicode arg" do
        @p.write_step(@io, @pf, @bf, "I hæve øæ cåkes", [Argument.new(7, 'øæ')])
        @io.string.should == "(I hæve )[øæ]( cåkes)"
      end
      
      it "should replace 2 args" do
        @p.write_step(@io, @pf, @bf, "I have 10 yellow cukes in my belly", [Argument.new(7, '10'), Argument.new(17, 'cukes')])
        @io.string.should == "(I have )[10]( yellow )[cukes]( in my belly)"
      end

      it "should replace 2 unicode args" do
        @p.write_step(@io, @pf, @bf, "Æslåk likes æøå", [Argument.new(0, 'Æslåk'), Argument.new(12, 'æøå')])
        @io.string.should == "[Æslåk]( likes )[æøå]"
      end
    end
  end
end

Version data entries

328 entries across 321 versions & 10 rubygems

Version Path
honeybadger-2.4.0 vendor/gems/ruby/2.2.0/gems/gherkin-2.12.2/spec/gherkin/formatter/step_printer_spec.rb
honeybadger-2.4.0 vendor/gems/ruby/2.1.0/gems/gherkin-2.12.2/spec/gherkin/formatter/step_printer_spec.rb
honeybadger-2.4.0 vendor/gems/ruby/1.9.1/gems/gherkin-2.12.2/spec/gherkin/formatter/step_printer_spec.rb
gherkin-2.12.2 spec/gherkin/formatter/step_printer_spec.rb
gherkin-2.12.2-x86-mswin32 spec/gherkin/formatter/step_printer_spec.rb
gherkin-2.12.2-x86-mingw32 spec/gherkin/formatter/step_printer_spec.rb
gherkin-2.12.2-java spec/gherkin/formatter/step_printer_spec.rb
candlepin-api-0.4.0 bundle/ruby/1.8/gems/gherkin-2.11.1/spec/gherkin/formatter/step_printer_spec.rb
candlepin-api-0.4.0 bundle/ruby/1.9.1/gems/gherkin-2.11.1/spec/gherkin/formatter/step_printer_spec.rb
candlepin-api-0.4.0 bundle/ruby/gems/gherkin-2.11.1/spec/gherkin/formatter/step_printer_spec.rb
gherkin-2.12.1 spec/gherkin/formatter/step_printer_spec.rb
gherkin-2.12.1-x86-mswin32 spec/gherkin/formatter/step_printer_spec.rb
gherkin-2.12.1-x86-mingw32 spec/gherkin/formatter/step_printer_spec.rb
gherkin-2.12.1-java spec/gherkin/formatter/step_printer_spec.rb
librarian-puppet-0.9.9 vendor/gems/ruby/1.9.1/gems/gherkin-2.11.6/spec/gherkin/formatter/step_printer_spec.rb
gherkin-2.12.0 spec/gherkin/formatter/step_printer_spec.rb
gherkin-2.12.0-x86-mingw32 spec/gherkin/formatter/step_printer_spec.rb
gherkin-2.12.0-x86-mswin32 spec/gherkin/formatter/step_printer_spec.rb
gherkin-2.12.0-java spec/gherkin/formatter/step_printer_spec.rb
gherkin-2.11.8 spec/gherkin/formatter/step_printer_spec.rb