cucumber 1.3.2 → 1.3.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. checksums.yaml +7 -0
  2. data/History.md +10 -3
  3. data/cucumber.gemspec +3 -2
  4. data/cucumber.yml +5 -0
  5. data/features/bootstrap.feature +2 -0
  6. data/gem_tasks/cucumber.rake +3 -5
  7. data/legacy_features/step_definitions/cucumber_steps.rb +3 -1
  8. data/lib/cucumber/cli/main.rb +1 -0
  9. data/lib/cucumber/constantize.rb +1 -0
  10. data/lib/cucumber/core_ext/disable_mini_and_test_unit_autorun.rb +2 -15
  11. data/lib/cucumber/platform.rb +1 -1
  12. data/lib/cucumber/rake/task.rb +5 -11
  13. data/spec/cucumber/ast/background_spec.rb +2 -2
  14. data/spec/cucumber/ast/feature_factory.rb +1 -1
  15. data/spec/cucumber/ast/outline_table_spec.rb +3 -3
  16. data/spec/cucumber/ast/scenario_outline_spec.rb +2 -2
  17. data/spec/cucumber/ast/step_spec.rb +1 -1
  18. data/spec/cucumber/ast/tree_walker_spec.rb +2 -2
  19. data/spec/cucumber/broadcaster_spec.rb +1 -1
  20. data/spec/cucumber/cli/configuration_spec.rb +13 -13
  21. data/spec/cucumber/cli/drb_client_spec.rb +3 -3
  22. data/spec/cucumber/cli/main_spec.rb +25 -25
  23. data/spec/cucumber/cli/options_spec.rb +4 -4
  24. data/spec/cucumber/cli/profile_loader_spec.rb +3 -3
  25. data/spec/cucumber/core_ext/proc_spec.rb +2 -2
  26. data/spec/cucumber/formatter/junit_spec.rb +1 -1
  27. data/spec/cucumber/formatter/progress_spec.rb +2 -2
  28. data/spec/cucumber/rb_support/rb_language_spec.rb +5 -5
  29. data/spec/cucumber/rb_support/rb_step_definition_spec.rb +1 -1
  30. data/spec/cucumber/wire_support/connection_spec.rb +3 -3
  31. data/spec/cucumber/wire_support/wire_language_spec.rb +2 -2
  32. data/spec/cucumber/wire_support/wire_step_definition_spec.rb +1 -1
  33. data/spec/cucumber/world/pending_spec.rb +4 -4
  34. metadata +50 -84
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: d7e54c4793cfc940226a5267fefc1d97a1aa96bc
4
+ data.tar.gz: ca619e89d28abf2905cb8734762a47b9ef5d12c4
5
+ SHA512:
6
+ metadata.gz: d3b1bc0739c3605a10c634adffd1fdeb1bd7dc69e20a913bcd3e14f2ceffb82d2346c338a9f94163a912cddccac120c84cf28d0fdf4f4a68afa4ccb16221c7ea
7
+ data.tar.gz: a68103d62fa10eeb6e2352f756b27aa7470b9d46b1f5a18b30a52e5d455fb9bb4b360a7300caefd7930f9b4c3622fc0e79a934d1e973233befa73432f54dc0f1
data/History.md CHANGED
@@ -1,7 +1,14 @@
1
- ## [1.3.x
2
- latest](https://github.com/cucumber/cucumber/compare/v1.3.2...v1.3.x-bugfix)
1
+ ## [1.3.x latest](https://github.com/cucumber/cucumber/compare/v1.3.3...v1.3.x-bugfix)
3
2
 
4
- ## [1.3.1](https://github.com/cucumber/cucumber/compare/v1.3.1...v1.3.2)
3
+ ## [1.3.3](https://github.com/cucumber/cucumber/compare/v1.3.2...v1.3.3)
4
+
5
+ * Fix compatability with MiniTest 5.0 ([#456](https://github.com/.cucumber/cucumber/issues/456) Matt Wynne)
6
+ * Warn that Spork support is broken (Steve Tooke)
7
+ * Fix error with Ruby 2.0.0 and `Cucumber::RUBY_1_8_7`
8
+ ([#492](https://github.com/cucumber/cucumber/issues/492) Matt Wynne)
9
+ * Use new Rubygems API to look for bundler ([#448](https://github.com/cucumber/cucumber/issues/448) Matt Wynne)
10
+
11
+ ## [1.3.2](https://github.com/cucumber/cucumber/compare/v1.3.1...v1.3.2)
5
12
 
6
13
  ### Bugfixes
7
14
  * Fixed ugly NoMethodError when a Scenario Outline has no Examples
@@ -16,11 +16,12 @@ Gem::Specification.new do |s|
16
16
  s.add_dependency 'builder', '>= 2.1.2'
17
17
  s.add_dependency 'diff-lcs', '>= 1.1.3'
18
18
  s.add_dependency 'gherkin', '~> 2.12.0'
19
- s.add_dependency 'multi_json', '~> 1.3'
19
+ s.add_dependency 'multi_json', '~> 1.7.5'
20
+ s.add_dependency 'multi_test', '~> 0.0.1'
20
21
 
21
22
  s.add_development_dependency 'aruba', '~> 0.5.2'
22
23
  s.add_development_dependency 'json', '~> 1.7'
23
- s.add_development_dependency 'nokogiri', '>= 1.5.2'
24
+ s.add_development_dependency 'nokogiri', '~> 1.5.2'
24
25
  s.add_development_dependency 'rake', '>= 0.9.2'
25
26
  s.add_development_dependency 'rspec', '>= 2.13'
26
27
  s.add_development_dependency 'simplecov', '>= 0.6.2'
@@ -12,6 +12,10 @@ rescue LoadError
12
12
  end
13
13
  wip_opts = "--color --tags @wip:3"
14
14
  wip_opts << ",@wip-jruby:3" if defined?(JRUBY_VERSION)
15
+
16
+ legacy_opts = ''
17
+ legacy_opts << " --tags ~@wire" if defined?(JRUBY_VERSION)
18
+ legacy_opts << " --tags ~@wip-jruby" if defined?(JRUBY_VERSION)
15
19
  %>
16
20
  default: <%= std_opts %> --tags ~@jruby --dotcucumber features/.cucumber
17
21
  jruby: <%= std_opts %> --tags ~@spork --tags ~@wire
@@ -23,3 +27,4 @@ ruby_2_0: <%= std_opts %> --tags ~@jruby --tags ~@fails_on_1_9
23
27
  wip: --wip <%= wip_opts %> features
24
28
  none: --format pretty
25
29
  rerun: <%= rerun_opts %> --format rerun --out rerun.txt --strict --tags ~@wip
30
+ legacy: legacy_features -r legacy_features -f progress --tags ~@spork <%= legacy_opts %>
@@ -3,6 +3,7 @@ Feature: Bootstrapping a new project
3
3
  As a new cucumber user
4
4
  I want cucumber to give helpful error messages in basic situations
5
5
 
6
+ @spawn
6
7
  Scenario: running cucumber against a non-existing feature file
7
8
  Given a directory without standard Cucumber project directory structure
8
9
  When I run `cucumber`
@@ -11,6 +12,7 @@ Feature: Bootstrapping a new project
11
12
  No such file or directory - features. Please create a features directory to get started. (Errno::ENOENT)
12
13
  """
13
14
 
15
+ @spawn
14
16
  Scenario: does not load ruby files in root if features directory is missing
15
17
  Given a directory without standard Cucumber project directory structure
16
18
  And a file named "should_not_load.rb" with:
@@ -18,15 +18,13 @@ class Cucumber::Rake::Task
18
18
  end
19
19
 
20
20
  Cucumber::Rake::Task.new(:features) do |t|
21
- t.fork = false
21
+ t.fork = true
22
22
  t.set_profile_for_current_ruby
23
23
  end
24
24
 
25
25
  Cucumber::Rake::Task.new(:legacy_features) do |t|
26
- t.fork = false
27
- t.cucumber_opts = %w{legacy_features}
28
- t.set_profile_for_current_ruby
29
- t.rcov = ENV['RCOV']
26
+ t.fork = true
27
+ t.profile = :legacy
30
28
  end
31
29
 
32
30
  task :cucumber => [:features, :legacy_features]
@@ -64,7 +64,9 @@ end
64
64
 
65
65
  Then /^it should (fail|pass)$/ do |success|
66
66
  if success == 'fail'
67
- last_exit_status.should_not == 0
67
+ if last_exit_status == 0
68
+ raise "Passed when expected to fail\nSTDOUT:\n#{last_stdout}\nSTDERR:\n#{last_stderr}"
69
+ end
68
70
  else
69
71
  if last_exit_status != 0
70
72
  raise "Failed with exit status #{last_exit_status}\nSTDOUT:\n#{last_stdout}\nSTDERR:\n#{last_stderr}"
@@ -74,6 +74,7 @@ module Cucumber
74
74
 
75
75
  def run_drb_client
76
76
  return false unless configuration.drb?
77
+ warn("Spork is no longer supported as of Cucumber 1.3.0. Please downgrade to version 1.2.5")
77
78
  @drb_output = DRbClient.run(@args, @err, @out, configuration.drb_port)
78
79
  true
79
80
  rescue DRbClientError => e
@@ -1,3 +1,4 @@
1
+ require 'cucumber/platform'
1
2
  module Cucumber
2
3
  module Constantize #:nodoc:
3
4
  def constantize(camel_cased_word)
@@ -1,15 +1,2 @@
1
- begin
2
- require 'test/unit'
3
-
4
- if defined?(Test::Unit::AutoRunner.need_auto_run?)
5
- # For test-unit gem >= 2.4.9
6
- Test::Unit::AutoRunner.need_auto_run = false
7
- elsif defined?(Test::Unit.run?)
8
- # For test-unit gem < 2.4.9
9
- Test::Unit.run = true
10
- elsif defined?(Test::Unit::Runner)
11
- # For test/unit bundled in Ruby >= 1.9.3
12
- Test::Unit::Runner.module_eval("@@stop_auto_run = true")
13
- end
14
- rescue LoadError => ignore
15
- end
1
+ require 'multi_test'
2
+ MultiTest.disable_autorun
@@ -4,7 +4,7 @@ require 'rbconfig'
4
4
 
5
5
  module Cucumber
6
6
  unless defined?(Cucumber::VERSION)
7
- VERSION = '1.3.2'
7
+ VERSION = '1.3.3'
8
8
  BINARY = File.expand_path(File.dirname(__FILE__) + '/../../bin/cucumber')
9
9
  LIBDIR = File.expand_path(File.dirname(__FILE__) + '/../../lib')
10
10
  JRUBY = defined?(JRUBY_VERSION)
@@ -75,19 +75,13 @@ module Cucumber
75
75
  end
76
76
 
77
77
  def use_bundler
78
- @bundler.nil? ? File.exist?("./Gemfile") && gem_available?("bundler") : @bundler
78
+ @bundler.nil? ? File.exist?("./Gemfile") && bundler_gem_available? : @bundler
79
79
  end
80
80
 
81
- def gem_available?(gemname)
82
- gem_available_new_rubygems?(gemname) || gem_available_old_rubygems?(gemname)
83
- end
84
-
85
- def gem_available_old_rubygems?(gemname)
86
- Gem.available?(gemname)
87
- end
88
-
89
- def gem_available_new_rubygems?(gemname)
90
- Gem::Specification.respond_to?(:find_all_by_name) && Gem::Specification.find_all_by_name(gemname).any?
81
+ def bundler_gem_available?
82
+ Gem::Specification.find_by_name('bundler')
83
+ rescue Gem::LoadError
84
+ false
91
85
  end
92
86
 
93
87
  def cmd
@@ -5,7 +5,7 @@ require 'cucumber/rb_support/rb_language'
5
5
  module Cucumber
6
6
  module Ast
7
7
  describe Background do
8
- let(:language) { stub.as_null_object }
8
+ let(:language) { double.as_null_object }
9
9
 
10
10
  before do
11
11
  extend(Cucumber::RbSupport::RbDsl)
@@ -22,7 +22,7 @@ module Cucumber
22
22
 
23
23
  @visitor = TreeWalker.new(@runtime)
24
24
 
25
- @feature = mock('feature', :visit? => true, :feature_elements => []).as_null_object
25
+ @feature = double('feature', :visit? => true, :feature_elements => []).as_null_object
26
26
  end
27
27
 
28
28
  it "should execute Before blocks before background steps" do
@@ -27,7 +27,7 @@ module Cucumber
27
27
  ])
28
28
  doc_string = Ast::DocString.new(%{\n I like\nCucumber sandwich\n}, '')
29
29
  location = Ast::Location.new('foo.feature', 2)
30
- language = stub.as_null_object
30
+ language = double.as_null_object
31
31
 
32
32
  background = Ast::Background.new(
33
33
  language,
@@ -6,13 +6,13 @@ module Cucumber::Ast
6
6
  describe "a header row" do
7
7
  before(:each) do
8
8
  @row = OutlineTable::ExampleRow.new(
9
- mock('table', :index => 0),
10
- [mock('cell', :status= => nil)]
9
+ double('table', :index => 0),
10
+ [double('cell', :status= => nil)]
11
11
  )
12
12
  end
13
13
 
14
14
  it "should raise an error if you try to call #failed?" do
15
- @row.accept_plain mock('visitor', :visit_table_cell => nil)
15
+ @row.accept_plain double('visitor', :visit_table_cell => nil)
16
16
  lambda{ @row.failed? }.should raise_error(NoMethodError, /cannot pass or fail/)
17
17
  end
18
18
  end
@@ -27,7 +27,7 @@ module Cucumber
27
27
  end
28
28
 
29
29
  location = Ast::Location.new('foo.feature', 19)
30
- language = stub
30
+ language = double
31
31
 
32
32
  @scenario_outline = ScenarioOutline.new(
33
33
  language,
@@ -66,7 +66,7 @@ module Cucumber
66
66
  it "should replace all variables and call outline once for each table row" do
67
67
  visitor = TreeWalker.new(@step_mother)
68
68
  visitor.should_receive(:visit_table_row).exactly(3).times
69
- @scenario_outline.feature = stub.as_null_object
69
+ @scenario_outline.feature = double.as_null_object
70
70
  visitor.visit_feature_element(@scenario_outline)
71
71
  end
72
72
  end
@@ -6,7 +6,7 @@ require 'cucumber/core_ext/string'
6
6
  module Cucumber
7
7
  module Ast
8
8
  describe Step do
9
- let(:language) { stub }
9
+ let(:language) { double }
10
10
 
11
11
  it "should replace arguments in name" do
12
12
  step = Step.new(language, 1, 'Given', 'a <color> cucumber')
@@ -3,9 +3,9 @@ require 'spec_helper'
3
3
  module Cucumber::Ast
4
4
  describe TreeWalker do
5
5
  let(:tree_walker) do
6
- TreeWalker.new(nil, [mock('listener', :before_visit_features => nil)])
6
+ TreeWalker.new(nil, [double('listener', :before_visit_features => nil)])
7
7
  end
8
- let(:features) { mock('features', :accept => nil) }
8
+ let(:features) { double('features', :accept => nil) }
9
9
 
10
10
  it "should visit features" do
11
11
  tree_walker.should_not_receive(:warn)
@@ -3,7 +3,7 @@ require 'spec_helper'
3
3
  module Cucumber
4
4
  describe Broadcaster do
5
5
  before do
6
- @receiver = mock('receiver')
6
+ @receiver = double('receiver')
7
7
  @broadcaster = Broadcaster.new([@receiver])
8
8
  end
9
9
 
@@ -9,20 +9,20 @@ module Cli
9
9
  end
10
10
 
11
11
  def given_cucumber_yml_defined_as(hash_or_string)
12
- File.stub!(:exist?).and_return(true)
12
+ File.stub(:exist?).and_return(true)
13
13
  cucumber_yml = hash_or_string.is_a?(Hash) ? hash_or_string.to_yaml : hash_or_string
14
- IO.stub!(:read).with('cucumber.yml').and_return(cucumber_yml)
14
+ IO.stub(:read).with('cucumber.yml').and_return(cucumber_yml)
15
15
  end
16
16
 
17
17
  def given_the_following_files(*files)
18
- File.stub!(:directory?).and_return(true)
19
- File.stub!(:file?).and_return(true)
20
- Dir.stub!(:[]).and_return(files)
18
+ File.stub(:directory?).and_return(true)
19
+ File.stub(:file?).and_return(true)
20
+ Dir.stub(:[]).and_return(files)
21
21
  end
22
22
 
23
23
  before(:each) do
24
- File.stub!(:exist?).and_return(false) # Meaning, no cucumber.yml exists
25
- Kernel.stub!(:exit).and_return(nil)
24
+ File.stub(:exist?).and_return(false) # Meaning, no cucumber.yml exists
25
+ Kernel.stub(:exit).and_return(nil)
26
26
  end
27
27
 
28
28
  def config
@@ -387,9 +387,9 @@ END_OF_MESSAGE
387
387
  end
388
388
 
389
389
  it "should search for all features in the specified directory" do
390
- File.stub!(:directory?).and_return(true)
391
- Dir.should_receive(:[]).with("feature_directory/**/*.feature").
392
- any_number_of_times.and_return(["cucumber.feature"])
390
+ File.stub(:directory?).and_return(true)
391
+ Dir.stub(:[]).with("feature_directory/**/*.feature").
392
+ and_return(["cucumber.feature"])
393
393
 
394
394
  config.parse!(%w{feature_directory/})
395
395
 
@@ -397,9 +397,9 @@ END_OF_MESSAGE
397
397
  end
398
398
 
399
399
  it "defaults to the features directory when no feature file are provided" do
400
- File.stub!(:directory?).and_return(true)
401
- Dir.should_receive(:[]).with("features/**/*.feature").
402
- any_number_of_times.and_return(["cucumber.feature"])
400
+ File.stub(:directory?).and_return(true)
401
+ Dir.stub(:[]).with("features/**/*.feature").
402
+ and_return(["cucumber.feature"])
403
403
 
404
404
  config.parse!(%w{})
405
405
 
@@ -8,8 +8,8 @@ module Cucumber
8
8
  @error_stream = StringIO.new
9
9
  @out_stream = StringIO.new
10
10
 
11
- @drb_object = mock('DRbObject', :run => true)
12
- DRbObject.stub!(:new_with_uri).and_return(@drb_object)
11
+ @drb_object = double('DRbObject', :run => true)
12
+ DRbObject.stub(:new_with_uri).and_return(@drb_object)
13
13
  end
14
14
 
15
15
  it "starts up a druby service" do
@@ -28,7 +28,7 @@ module Cucumber
28
28
  end
29
29
 
30
30
  it "returns raises an error when it can't connect to the server" do
31
- DRbObject.stub!(:new_with_uri).and_raise(DRb::DRbConnError)
31
+ DRbObject.stub(:new_with_uri).and_raise(DRb::DRbConnError)
32
32
  lambda { DRbClient.run(@args, @error_stream, @out_stream) }.should raise_error(DRbClientError, "No DRb server is running.")
33
33
  end
34
34
 
@@ -7,15 +7,15 @@ module Cucumber
7
7
  module Cli
8
8
  describe Main do
9
9
  before(:each) do
10
- File.stub!(:exist?).and_return(false) # When Configuration checks for cucumber.yml
11
- Dir.stub!(:[]).and_return([]) # to prevent cucumber's features dir to being laoded
10
+ File.stub(:exist?).and_return(false) # When Configuration checks for cucumber.yml
11
+ Dir.stub(:[]).and_return([]) # to prevent cucumber's features dir to being laoded
12
12
  end
13
13
 
14
14
  let(:args) { [] }
15
15
  let(:stdin) { StringIO.new }
16
16
  let(:stdout) { StringIO.new }
17
17
  let(:stderr) { StringIO.new }
18
- let(:kernel) { mock(:kernel) }
18
+ let(:kernel) { double(:kernel) }
19
19
  subject { Main.new(args, stdin, stdout, stderr, kernel)}
20
20
 
21
21
  describe "#execute!" do
@@ -28,7 +28,7 @@ module Cucumber
28
28
 
29
29
  it "configures that runtime" do
30
30
  expected_configuration = double('Configuration', :drb? => false).as_null_object
31
- Configuration.stub!(:new => expected_configuration)
31
+ Configuration.stub(:new => expected_configuration)
32
32
  existing_runtime.should_receive(:configure).with(expected_configuration)
33
33
  kernel.should_receive(:exit).with(1)
34
34
  do_execute
@@ -37,7 +37,7 @@ module Cucumber
37
37
  it "uses that runtime for running and reporting results" do
38
38
  expected_results = double('results', :failure? => true)
39
39
  existing_runtime.should_receive(:run!)
40
- existing_runtime.stub!(:results).and_return(expected_results)
40
+ existing_runtime.stub(:results).and_return(expected_results)
41
41
  kernel.should_receive(:exit).with(1)
42
42
  do_execute
43
43
  end
@@ -66,15 +66,15 @@ module Cucumber
66
66
  before(:each) do
67
67
  b = Cucumber::Parser::GherkinBuilder.new('features/foo.feature')
68
68
  b.feature(Gherkin::Formatter::Model::Feature.new([], [], "Feature", "Foo", "", 99, ""))
69
- b.language = stub
69
+ b.language = double
70
70
  @empty_feature = b.result
71
71
  end
72
72
 
73
73
  it "should show feature files parsed" do
74
74
  cli = Main.new(%w{--verbose example.feature}, stdin, stdout, stderr, kernel)
75
- cli.stub!(:require)
75
+ cli.stub(:require)
76
76
 
77
- Cucumber::FeatureFile.stub!(:new).and_return(mock("feature file", :parse => @empty_feature))
77
+ Cucumber::FeatureFile.stub(:new).and_return(double("feature file", :parse => @empty_feature))
78
78
 
79
79
  kernel.should_receive(:exit).with(0)
80
80
  cli.execute!
@@ -88,18 +88,18 @@ module Cucumber
88
88
  describe "in module" do
89
89
  it "should resolve each module until it gets Formatter class" do
90
90
  cli = Main.new(%w{--format ZooModule::MonkeyFormatterClass}, stdin, stdout, stderr, kernel)
91
- mock_module = mock('module')
92
- Object.stub!(:const_defined?).and_return(true)
93
- mock_module.stub!(:const_defined?).and_return(true)
91
+ double = double('module')
92
+ Object.stub(:const_defined?).and_return(true)
93
+ double.stub(:const_defined?).and_return(true)
94
94
 
95
- f = stub('formatter').as_null_object
95
+ f = double('formatter').as_null_object
96
96
 
97
97
  if Cucumber::RUBY_1_8_7
98
- Object.should_receive(:const_get).with('ZooModule').and_return(mock_module)
99
- mock_module.should_receive(:const_get).with('MonkeyFormatterClass').and_return(mock('formatter class', :new => f))
98
+ Object.should_receive(:const_get).with('ZooModule').and_return(double)
99
+ double.should_receive(:const_get).with('MonkeyFormatterClass').and_return(double('formatter class', :new => f))
100
100
  else
101
- Object.should_receive(:const_get).with('ZooModule', false).and_return(mock_module)
102
- mock_module.should_receive(:const_get).with('MonkeyFormatterClass', false).and_return(mock('formatter class', :new => f))
101
+ Object.should_receive(:const_get).with('ZooModule', false).and_return(double)
102
+ double.should_receive(:const_get).with('MonkeyFormatterClass', false).and_return(double('formatter class', :new => f))
103
103
  end
104
104
 
105
105
  kernel.should_receive(:exit).with(0)
@@ -111,8 +111,8 @@ module Cucumber
111
111
  [ProfilesNotDefinedError, YmlLoadError, ProfileNotFound].each do |exception_klass|
112
112
 
113
113
  it "rescues #{exception_klass}, prints the message to the error stream" do
114
- Configuration.stub!(:new).and_return(configuration = mock('configuration'))
115
- configuration.stub!(:parse!).and_raise(exception_klass.new("error message"))
114
+ Configuration.stub(:new).and_return(configuration = double('configuration'))
115
+ configuration.stub(:parse!).and_raise(exception_klass.new("error message"))
116
116
 
117
117
  subject.execute!
118
118
  stderr.string.should == "error message\n"
@@ -121,13 +121,13 @@ module Cucumber
121
121
 
122
122
  context "--drb" do
123
123
  before(:each) do
124
- @configuration = mock('Configuration', :drb? => true, :dotcucumber => false).as_null_object
125
- Configuration.stub!(:new).and_return(@configuration)
124
+ @configuration = double('Configuration', :drb? => true, :dotcucumber => false).as_null_object
125
+ Configuration.stub(:new).and_return(@configuration)
126
126
 
127
127
  args = ['features']
128
128
 
129
- step_mother = mock('StepMother').as_null_object
130
- StepMother.stub!(:new).and_return(step_mother)
129
+ step_mother = double('StepMother').as_null_object
130
+ StepMother.stub(:new).and_return(step_mother)
131
131
 
132
132
  @cli = Main.new(args, stdin, stdout, stderr, kernel)
133
133
  end
@@ -142,18 +142,18 @@ module Cucumber
142
142
  end
143
143
 
144
144
  it "returns the result from the DRbClient" do
145
- DRbClient.stub!(:run).and_return('foo')
145
+ DRbClient.stub(:run).and_return('foo')
146
146
  @cli.execute!.should == 'foo'
147
147
  end
148
148
 
149
149
  it "ceases execution if the DrbClient is able to perform the execution" do
150
- DRbClient.stub!(:run).and_return(true)
150
+ DRbClient.stub(:run).and_return(true)
151
151
  @configuration.should_not_receive(:build_formatter_broadcaster)
152
152
  @cli.execute!
153
153
  end
154
154
 
155
155
  context "when the DrbClient is unable to perfrom the execution" do
156
- before { DRbClient.stub!(:run).and_raise(DRbClientError.new('error message.')) }
156
+ before { DRbClient.stub(:run).and_raise(DRbClientError.new('error message.')) }
157
157
 
158
158
  it "alerts the user that execution will be performed locally" do
159
159
  kernel.should_receive(:exit).with(1)
@@ -7,14 +7,14 @@ module Cli
7
7
  describe Options do
8
8
 
9
9
  def given_cucumber_yml_defined_as(hash_or_string)
10
- File.stub!(:exist?).and_return(true)
10
+ File.stub(:exist?).and_return(true)
11
11
  cucumber_yml = hash_or_string.is_a?(Hash) ? hash_or_string.to_yaml : hash_or_string
12
- IO.stub!(:read).with('cucumber.yml').and_return(cucumber_yml)
12
+ IO.stub(:read).with('cucumber.yml').and_return(cucumber_yml)
13
13
  end
14
14
 
15
15
  before(:each) do
16
- File.stub!(:exist?).and_return(false) # Meaning, no cucumber.yml exists
17
- Kernel.stub!(:exit).and_return(nil)
16
+ File.stub(:exist?).and_return(false) # Meaning, no cucumber.yml exists
17
+ Kernel.stub(:exit).and_return(nil)
18
18
  end
19
19
 
20
20
  def output_stream
@@ -5,10 +5,10 @@ module Cucumber
5
5
  module Cli
6
6
  describe ProfileLoader do
7
7
  def given_cucumber_yml_defined_as(hash_or_string)
8
- Dir.stub!(:glob).with('{,.config/,config/}cucumber{.yml,.yaml}').and_return(['cucumber.yml'])
9
- File.stub!(:exist?).and_return(true)
8
+ Dir.stub(:glob).with('{,.config/,config/}cucumber{.yml,.yaml}').and_return(['cucumber.yml'])
9
+ File.stub(:exist?).and_return(true)
10
10
  cucumber_yml = hash_or_string.is_a?(Hash) ? hash_or_string.to_yaml : hash_or_string
11
- IO.stub!(:read).with('cucumber.yml').and_return(cucumber_yml)
11
+ IO.stub(:read).with('cucumber.yml').and_return(cucumber_yml)
12
12
  end
13
13
 
14
14
  def loader
@@ -60,7 +60,7 @@ describe Proc do
60
60
  lambda {
61
61
  Object.new.cucumber_instance_exec(true, 'foo', 1) do |*args|
62
62
  end
63
- }.should_not raise_error(Cucumber::ArityMismatchError)
63
+ }.should_not raise_error
64
64
  end
65
65
  end
66
66
 
@@ -68,7 +68,7 @@ describe Proc do
68
68
  lambda {
69
69
  Object.new.cucumber_instance_exec(true, 'foo', 1) do |arg,*args|
70
70
  end
71
- }.should_not raise_error(Cucumber::ArityMismatchError)
71
+ }.should_not raise_error
72
72
  end
73
73
 
74
74
  it "should raise ArityMismatchError for too few required args when using varargs (expecting 1+)" do
@@ -19,7 +19,7 @@ module Cucumber::Formatter
19
19
  end
20
20
 
21
21
  before(:each) do
22
- File.stub!(:directory?).and_return(true)
22
+ File.stub(:directory?).and_return(true)
23
23
  @formatter = TestDoubleJunitFormatter.new(step_mother, '', {})
24
24
  end
25
25
 
@@ -8,14 +8,14 @@ module Cucumber
8
8
  before(:each) do
9
9
  Cucumber::Term::ANSIColor.coloring = false
10
10
  @out = StringIO.new
11
- progress = Cucumber::Formatter::Progress.new(mock("step mother"), @out, {})
11
+ progress = Cucumber::Formatter::Progress.new(double("step mother"), @out, {})
12
12
  @visitor = Cucumber::Ast::TreeWalker.new(nil, [progress])
13
13
  end
14
14
 
15
15
  describe "visiting a table cell value without a status" do
16
16
  it "should take the status from the last run step" do
17
17
  @visitor.visit_step_result('', '', nil, :failed, nil, 10, nil, nil)
18
- outline_table = mock()
18
+ outline_table = double()
19
19
  outline_table.should_receive(:accept) do |visitor|
20
20
  visitor.visit_table_cell_value('value', nil)
21
21
  end
@@ -16,7 +16,7 @@ module Cucumber
16
16
  end
17
17
 
18
18
  describe "snippets" do
19
- let(:snippet) { stub.as_null_object }
19
+ let(:snippet) { double.as_null_object }
20
20
 
21
21
  it "creates a regexp Snippet class by default" do
22
22
  Snippet::Regexp.should_receive(:new).and_return(snippet)
@@ -39,7 +39,7 @@ module Cucumber
39
39
  end
40
40
 
41
41
  it "passes all parameters to Snippet contructor" do
42
- code_keyword, pattern, multiline_argument_class = stub, stub, stub
42
+ code_keyword, pattern, multiline_argument_class = double, double, double
43
43
  Snippet::Regexp.should_receive(:new).with(code_keyword, pattern, multiline_argument_class)
44
44
  rb.snippet_text(code_keyword, pattern, multiline_argument_class)
45
45
  end
@@ -106,7 +106,7 @@ module Cucumber
106
106
 
107
107
  it "should implicitly extend world with modules" do
108
108
  dsl.World(ModuleOne, ModuleTwo)
109
- rb.before(mock('scenario').as_null_object)
109
+ rb.before(double('scenario').as_null_object)
110
110
  class << rb.current_world
111
111
  included_modules.inspect.should =~ /ModuleOne/ # Workaround for RSpec/Ruby 1.9 issue with namespaces
112
112
  included_modules.inspect.should =~ /ModuleTwo/
@@ -243,7 +243,7 @@ or http://wiki.github.com/cucumber/cucumber/a-whole-new-world.
243
243
  fish = dsl.Before('@fish'){}
244
244
  meat = dsl.Before('@meat'){}
245
245
 
246
- scenario = mock('Scenario')
246
+ scenario = double('Scenario')
247
247
  scenario.should_receive(:accept_hook?).with(fish).and_return(true)
248
248
  scenario.should_receive(:accept_hook?).with(meat).and_return(false)
249
249
 
@@ -257,7 +257,7 @@ or http://wiki.github.com/cucumber/cucumber/a-whole-new-world.
257
257
  b = dsl.Around('@tag') do |scenario, block|
258
258
  end
259
259
 
260
- scenario = mock('Scenario')
260
+ scenario = double('Scenario')
261
261
  scenario.should_receive(:accept_hook?).with(a).and_return(true)
262
262
  scenario.should_receive(:accept_hook?).with(b).and_return(false)
263
263
 
@@ -15,7 +15,7 @@ module Cucumber
15
15
  end
16
16
 
17
17
  before do
18
- rb.before(mock('scenario').as_null_object)
18
+ rb.before(double('scenario').as_null_object)
19
19
  $inside = nil
20
20
  end
21
21
 
@@ -32,19 +32,19 @@ module Cucumber
32
32
  before(:each) do
33
33
  @config = TestConfiguration.new
34
34
  @connection = TestConnection.new(@config)
35
- @connection.socket = @socket = mock('socket').as_null_object
35
+ @connection.socket = @socket = double('socket').as_null_object
36
36
  @response = %q{["response"]}
37
37
  end
38
38
 
39
39
  it "re-raises a timeout error" do
40
- Timeout.stub!(:timeout).and_raise(Timeout::Error.new(''))
40
+ Timeout.stub(:timeout).and_raise(Timeout::Error.new(''))
41
41
  lambda { @connection.call_remote(nil, :foo, []) }.should raise_error(Timeout::Error)
42
42
  end
43
43
 
44
44
  it "ignores timeout errors when configured to do so" do
45
45
  @config.custom_timeout[:foo] = :never
46
46
  @socket.stub(:gets => @response)
47
- handler = mock(:handle_response => :response)
47
+ handler = double(:handle_response => :response)
48
48
  @connection.call_remote(handler, :foo, []).should == :response
49
49
  end
50
50
 
@@ -5,7 +5,7 @@ module Cucumber
5
5
  module WireSupport
6
6
  describe WireLanguage do
7
7
  def stub_wire_file!(filename, config)
8
- Configuration.stub!(:from_file).with(filename).and_return config
8
+ Configuration.stub(:from_file).with(filename).and_return config
9
9
  end
10
10
 
11
11
  describe "#load_code_file" do
@@ -23,7 +23,7 @@ module Cucumber
23
23
  def stub_remote_steps!(config, attributes)
24
24
  Connection.should_receive(:new).
25
25
  with(config).
26
- and_return( mock('remote_steps', attributes) )
26
+ and_return( double('remote_steps', attributes) )
27
27
  end
28
28
 
29
29
  before(:each) do
@@ -6,7 +6,7 @@ module Cucumber
6
6
  describe WireStepDefinition, "#invoke" do
7
7
  describe "if one of the arguments is a table" do
8
8
  it "should pass the raw table to the connection" do
9
- connection = mock('connection')
9
+ connection = double('connection')
10
10
  step_definition = WireStepDefinition.new(connection, 'id' => 'the-id')
11
11
  expected_args = ["a","b", [["1","2"],["3","4"]]]
12
12
  connection.should_receive(:invoke).with('the-id', expected_args)
@@ -6,7 +6,7 @@ module Cucumber
6
6
 
7
7
  before(:each) do
8
8
  l = RbSupport::RbLanguage.new(Runtime.new)
9
- l.begin_rb_scenario(mock('scenario').as_null_object)
9
+ l.begin_rb_scenario(double('scenario').as_null_object)
10
10
  @world = l.current_world
11
11
  end
12
12
 
@@ -24,12 +24,12 @@ module Cucumber
24
24
  }.should raise_error(Cucumber::Pending, /TODO/)
25
25
  end
26
26
 
27
- it 'should raise a Pending if a supplied block fails as expected with a mock' do
27
+ it 'should raise a Pending if a supplied block fails as expected with a double' do
28
28
  lambda {
29
29
  @world.pending "TODO" do
30
- m = mock('thing')
30
+ m = double('thing')
31
31
  m.should_receive(:foo)
32
- m.rspec_verify
32
+ RSpec::Mocks.verify
33
33
  end
34
34
  }.should raise_error(Cucumber::Pending, /TODO/)
35
35
  end
metadata CHANGED
@@ -1,52 +1,46 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cucumber
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.2
5
- prerelease:
4
+ version: 1.3.3
6
5
  platform: ruby
7
6
  authors:
8
7
  - Aslak Hellesøy
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-05-22 00:00:00.000000000 Z
11
+ date: 2013-07-07 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: builder
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - '>='
20
18
  - !ruby/object:Gem::Version
21
19
  version: 2.1.2
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - '>='
28
25
  - !ruby/object:Gem::Version
29
26
  version: 2.1.2
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: diff-lcs
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - '>='
36
32
  - !ruby/object:Gem::Version
37
33
  version: 1.1.3
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - '>='
44
39
  - !ruby/object:Gem::Version
45
40
  version: 1.1.3
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: gherkin
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - ~>
52
46
  - !ruby/object:Gem::Version
@@ -54,7 +48,6 @@ dependencies:
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
52
  - - ~>
60
53
  - !ruby/object:Gem::Version
@@ -62,23 +55,34 @@ dependencies:
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: multi_json
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
59
  - - ~>
68
60
  - !ruby/object:Gem::Version
69
- version: '1.3'
61
+ version: 1.7.5
70
62
  type: :runtime
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
66
  - - ~>
76
67
  - !ruby/object:Gem::Version
77
- version: '1.3'
68
+ version: 1.7.5
69
+ - !ruby/object:Gem::Dependency
70
+ name: multi_test
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ~>
74
+ - !ruby/object:Gem::Version
75
+ version: 0.0.1
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ~>
81
+ - !ruby/object:Gem::Version
82
+ version: 0.0.1
78
83
  - !ruby/object:Gem::Dependency
79
84
  name: aruba
80
85
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
86
  requirements:
83
87
  - - ~>
84
88
  - !ruby/object:Gem::Version
@@ -86,7 +90,6 @@ dependencies:
86
90
  type: :development
87
91
  prerelease: false
88
92
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
93
  requirements:
91
94
  - - ~>
92
95
  - !ruby/object:Gem::Version
@@ -94,7 +97,6 @@ dependencies:
94
97
  - !ruby/object:Gem::Dependency
95
98
  name: json
96
99
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
100
  requirements:
99
101
  - - ~>
100
102
  - !ruby/object:Gem::Version
@@ -102,7 +104,6 @@ dependencies:
102
104
  type: :development
103
105
  prerelease: false
104
106
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
107
  requirements:
107
108
  - - ~>
108
109
  - !ruby/object:Gem::Version
@@ -110,103 +111,90 @@ dependencies:
110
111
  - !ruby/object:Gem::Dependency
111
112
  name: nokogiri
112
113
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
114
  requirements:
115
- - - ! '>='
115
+ - - ~>
116
116
  - !ruby/object:Gem::Version
117
117
  version: 1.5.2
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
121
  requirements:
123
- - - ! '>='
122
+ - - ~>
124
123
  - !ruby/object:Gem::Version
125
124
  version: 1.5.2
126
125
  - !ruby/object:Gem::Dependency
127
126
  name: rake
128
127
  requirement: !ruby/object:Gem::Requirement
129
- none: false
130
128
  requirements:
131
- - - ! '>='
129
+ - - '>='
132
130
  - !ruby/object:Gem::Version
133
131
  version: 0.9.2
134
132
  type: :development
135
133
  prerelease: false
136
134
  version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
135
  requirements:
139
- - - ! '>='
136
+ - - '>='
140
137
  - !ruby/object:Gem::Version
141
138
  version: 0.9.2
142
139
  - !ruby/object:Gem::Dependency
143
140
  name: rspec
144
141
  requirement: !ruby/object:Gem::Requirement
145
- none: false
146
142
  requirements:
147
- - - ! '>='
143
+ - - '>='
148
144
  - !ruby/object:Gem::Version
149
145
  version: '2.13'
150
146
  type: :development
151
147
  prerelease: false
152
148
  version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
149
  requirements:
155
- - - ! '>='
150
+ - - '>='
156
151
  - !ruby/object:Gem::Version
157
152
  version: '2.13'
158
153
  - !ruby/object:Gem::Dependency
159
154
  name: simplecov
160
155
  requirement: !ruby/object:Gem::Requirement
161
- none: false
162
156
  requirements:
163
- - - ! '>='
157
+ - - '>='
164
158
  - !ruby/object:Gem::Version
165
159
  version: 0.6.2
166
160
  type: :development
167
161
  prerelease: false
168
162
  version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
163
  requirements:
171
- - - ! '>='
164
+ - - '>='
172
165
  - !ruby/object:Gem::Version
173
166
  version: 0.6.2
174
167
  - !ruby/object:Gem::Dependency
175
168
  name: spork
176
169
  requirement: !ruby/object:Gem::Requirement
177
- none: false
178
170
  requirements:
179
- - - ! '>='
171
+ - - '>='
180
172
  - !ruby/object:Gem::Version
181
173
  version: 1.0.0.rc2
182
174
  type: :development
183
175
  prerelease: false
184
176
  version_requirements: !ruby/object:Gem::Requirement
185
- none: false
186
177
  requirements:
187
- - - ! '>='
178
+ - - '>='
188
179
  - !ruby/object:Gem::Version
189
180
  version: 1.0.0.rc2
190
181
  - !ruby/object:Gem::Dependency
191
182
  name: syntax
192
183
  requirement: !ruby/object:Gem::Requirement
193
- none: false
194
184
  requirements:
195
- - - ! '>='
185
+ - - '>='
196
186
  - !ruby/object:Gem::Version
197
187
  version: 1.0.0
198
188
  type: :development
199
189
  prerelease: false
200
190
  version_requirements: !ruby/object:Gem::Requirement
201
- none: false
202
191
  requirements:
203
- - - ! '>='
192
+ - - '>='
204
193
  - !ruby/object:Gem::Version
205
194
  version: 1.0.0
206
195
  - !ruby/object:Gem::Dependency
207
196
  name: bcat
208
197
  requirement: !ruby/object:Gem::Requirement
209
- none: false
210
198
  requirements:
211
199
  - - ~>
212
200
  - !ruby/object:Gem::Version
@@ -214,7 +202,6 @@ dependencies:
214
202
  type: :development
215
203
  prerelease: false
216
204
  version_requirements: !ruby/object:Gem::Requirement
217
- none: false
218
205
  requirements:
219
206
  - - ~>
220
207
  - !ruby/object:Gem::Version
@@ -222,7 +209,6 @@ dependencies:
222
209
  - !ruby/object:Gem::Dependency
223
210
  name: kramdown
224
211
  requirement: !ruby/object:Gem::Requirement
225
- none: false
226
212
  requirements:
227
213
  - - ~>
228
214
  - !ruby/object:Gem::Version
@@ -230,7 +216,6 @@ dependencies:
230
216
  type: :development
231
217
  prerelease: false
232
218
  version_requirements: !ruby/object:Gem::Requirement
233
- none: false
234
219
  requirements:
235
220
  - - ~>
236
221
  - !ruby/object:Gem::Version
@@ -238,7 +223,6 @@ dependencies:
238
223
  - !ruby/object:Gem::Dependency
239
224
  name: yard
240
225
  requirement: !ruby/object:Gem::Requirement
241
- none: false
242
226
  requirements:
243
227
  - - ~>
244
228
  - !ruby/object:Gem::Version
@@ -246,7 +230,6 @@ dependencies:
246
230
  type: :development
247
231
  prerelease: false
248
232
  version_requirements: !ruby/object:Gem::Requirement
249
- none: false
250
233
  requirements:
251
234
  - - ~>
252
235
  - !ruby/object:Gem::Version
@@ -254,9 +237,8 @@ dependencies:
254
237
  - !ruby/object:Gem::Dependency
255
238
  name: capybara
256
239
  requirement: !ruby/object:Gem::Requirement
257
- none: false
258
240
  requirements:
259
- - - ! '>='
241
+ - - '>='
260
242
  - !ruby/object:Gem::Version
261
243
  version: 1.1.2
262
244
  - - <
@@ -265,9 +247,8 @@ dependencies:
265
247
  type: :development
266
248
  prerelease: false
267
249
  version_requirements: !ruby/object:Gem::Requirement
268
- none: false
269
250
  requirements:
270
- - - ! '>='
251
+ - - '>='
271
252
  - !ruby/object:Gem::Version
272
253
  version: 1.1.2
273
254
  - - <
@@ -276,65 +257,57 @@ dependencies:
276
257
  - !ruby/object:Gem::Dependency
277
258
  name: rack-test
278
259
  requirement: !ruby/object:Gem::Requirement
279
- none: false
280
260
  requirements:
281
- - - ! '>='
261
+ - - '>='
282
262
  - !ruby/object:Gem::Version
283
263
  version: 0.6.1
284
264
  type: :development
285
265
  prerelease: false
286
266
  version_requirements: !ruby/object:Gem::Requirement
287
- none: false
288
267
  requirements:
289
- - - ! '>='
268
+ - - '>='
290
269
  - !ruby/object:Gem::Version
291
270
  version: 0.6.1
292
271
  - !ruby/object:Gem::Dependency
293
272
  name: ramaze
294
273
  requirement: !ruby/object:Gem::Requirement
295
- none: false
296
274
  requirements:
297
- - - ! '>='
275
+ - - '>='
298
276
  - !ruby/object:Gem::Version
299
277
  version: '0'
300
278
  type: :development
301
279
  prerelease: false
302
280
  version_requirements: !ruby/object:Gem::Requirement
303
- none: false
304
281
  requirements:
305
- - - ! '>='
282
+ - - '>='
306
283
  - !ruby/object:Gem::Version
307
284
  version: '0'
308
285
  - !ruby/object:Gem::Dependency
309
286
  name: sinatra
310
287
  requirement: !ruby/object:Gem::Requirement
311
- none: false
312
288
  requirements:
313
- - - ! '>='
289
+ - - '>='
314
290
  - !ruby/object:Gem::Version
315
291
  version: 1.3.2
316
292
  type: :development
317
293
  prerelease: false
318
294
  version_requirements: !ruby/object:Gem::Requirement
319
- none: false
320
295
  requirements:
321
- - - ! '>='
296
+ - - '>='
322
297
  - !ruby/object:Gem::Version
323
298
  version: 1.3.2
324
299
  - !ruby/object:Gem::Dependency
325
300
  name: webrat
326
301
  requirement: !ruby/object:Gem::Requirement
327
- none: false
328
302
  requirements:
329
- - - ! '>='
303
+ - - '>='
330
304
  - !ruby/object:Gem::Version
331
305
  version: 0.7.3
332
306
  type: :development
333
307
  prerelease: false
334
308
  version_requirements: !ruby/object:Gem::Requirement
335
- none: false
336
309
  requirements:
337
- - - ! '>='
310
+ - - '>='
338
311
  - !ruby/object:Gem::Version
339
312
  version: 0.7.3
340
313
  description: Behaviour Driven Development with elegance and joy
@@ -934,35 +907,28 @@ files:
934
907
  - spec/spec_helper.rb
935
908
  homepage: http://cukes.info
936
909
  licenses: []
910
+ metadata: {}
937
911
  post_install_message:
938
912
  rdoc_options:
939
913
  - --charset=UTF-8
940
914
  require_paths:
941
915
  - lib
942
916
  required_ruby_version: !ruby/object:Gem::Requirement
943
- none: false
944
917
  requirements:
945
- - - ! '>='
918
+ - - '>='
946
919
  - !ruby/object:Gem::Version
947
920
  version: '0'
948
- segments:
949
- - 0
950
- hash: -3754938966826455462
951
921
  required_rubygems_version: !ruby/object:Gem::Requirement
952
- none: false
953
922
  requirements:
954
- - - ! '>='
923
+ - - '>='
955
924
  - !ruby/object:Gem::Version
956
925
  version: '0'
957
- segments:
958
- - 0
959
- hash: -3754938966826455462
960
926
  requirements: []
961
927
  rubyforge_project:
962
- rubygems_version: 1.8.23
928
+ rubygems_version: 2.0.3
963
929
  signing_key:
964
- specification_version: 3
965
- summary: cucumber-1.3.2
930
+ specification_version: 4
931
+ summary: cucumber-1.3.3
966
932
  test_files:
967
933
  - features/assertions.feature
968
934
  - features/background.feature