cucumber 0.6.2 → 0.6.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. data/History.txt +19 -0
  2. data/README.rdoc +1 -1
  3. data/Rakefile +2 -5
  4. data/VERSION.yml +1 -1
  5. data/cucumber.gemspec +12 -4
  6. data/examples/i18n/de/features/addition.feature +1 -1
  7. data/examples/i18n/de/features/step_definitons/calculator_steps.rb +3 -3
  8. data/examples/self_test/features/step_definitions/sample_steps.rb +22 -22
  9. data/examples/tickets/features/half_manual.feature +11 -0
  10. data/examples/tickets/features/step_definitons/half_manual_steps.rb +11 -0
  11. data/features/announce.feature +97 -97
  12. data/features/background.feature +1 -4
  13. data/features/bug_475.feature +1 -2
  14. data/features/call_many_steps.feature +4 -6
  15. data/features/exception_in_after_block.feature +2 -3
  16. data/features/exception_in_after_step_block.feature +2 -3
  17. data/features/exception_in_before_block.feature +1 -2
  18. data/features/html_formatter/a.html +50 -40
  19. data/features/negative_tagged_hooks.feature +2 -3
  20. data/features/profiles.feature +2 -2
  21. data/features/report_called_undefined_steps.feature +2 -2
  22. data/features/rerun_formatter.feature +45 -0
  23. data/features/table_diffing.feature +1 -1
  24. data/features/table_mapping.feature +2 -3
  25. data/features/wire_protocol_table_diffing.feature +25 -0
  26. data/features/wire_protocol_tags.feature +47 -0
  27. data/lib/cucumber/ast/table.rb +2 -2
  28. data/lib/cucumber/cli/configuration.rb +1 -1
  29. data/lib/cucumber/cli/drb_client.rb +27 -16
  30. data/lib/cucumber/cli/profile_loader.rb +3 -2
  31. data/lib/cucumber/core_ext/proc.rb +1 -2
  32. data/lib/cucumber/formatter/console.rb +6 -4
  33. data/lib/cucumber/formatter/cucumber.css +10 -0
  34. data/lib/cucumber/formatter/cucumber.sass +10 -0
  35. data/lib/cucumber/formatter/html.rb +197 -186
  36. data/lib/cucumber/formatter/pdf.rb +24 -7
  37. data/lib/cucumber/formatter/rerun.rb +6 -3
  38. data/lib/cucumber/formatter/unicode.rb +1 -1
  39. data/lib/cucumber/languages.yml +7 -7
  40. data/lib/cucumber/parser/natural_language.rb +7 -0
  41. data/lib/cucumber/parser/treetop_ext.rb +1 -0
  42. data/lib/cucumber/rb_support/rb_world.rb +5 -0
  43. data/lib/cucumber/step_match.rb +4 -2
  44. data/lib/cucumber/step_mother.rb +53 -4
  45. data/lib/cucumber/wire_support/configuration.rb +11 -1
  46. data/lib/cucumber/wire_support/wire_language.rb +6 -3
  47. data/lib/cucumber/wire_support/wire_protocol.rb +2 -2
  48. data/lib/cucumber/wire_support/wire_protocol/requests.rb +26 -4
  49. data/spec/cucumber/ast/background_spec.rb +3 -3
  50. data/spec/cucumber/ast/feature_element_spec.rb +2 -2
  51. data/spec/cucumber/ast/feature_spec.rb +5 -5
  52. data/spec/cucumber/ast/outline_table_spec.rb +1 -1
  53. data/spec/cucumber/ast/py_string_spec.rb +1 -1
  54. data/spec/cucumber/ast/scenario_outline_spec.rb +3 -3
  55. data/spec/cucumber/ast/scenario_spec.rb +3 -3
  56. data/spec/cucumber/ast/step_collection_spec.rb +3 -3
  57. data/spec/cucumber/ast/step_spec.rb +1 -1
  58. data/spec/cucumber/ast/table_spec.rb +23 -3
  59. data/spec/cucumber/ast/tree_walker_spec.rb +1 -1
  60. data/spec/cucumber/broadcaster_spec.rb +1 -1
  61. data/spec/cucumber/cli/configuration_spec.rb +16 -6
  62. data/spec/cucumber/cli/drb_client_spec.rb +1 -1
  63. data/spec/cucumber/cli/main_spec.rb +13 -14
  64. data/spec/cucumber/cli/options_spec.rb +1 -1
  65. data/spec/cucumber/cli/profile_loader_spec.rb +1 -1
  66. data/spec/cucumber/core_ext/proc_spec.rb +1 -1
  67. data/spec/cucumber/formatter/ansicolor_spec.rb +1 -1
  68. data/spec/cucumber/formatter/color_io_spec.rb +1 -1
  69. data/spec/cucumber/formatter/duration_spec.rb +1 -1
  70. data/spec/cucumber/formatter/html_spec.rb +2 -2
  71. data/spec/cucumber/formatter/junit_spec.rb +2 -2
  72. data/spec/cucumber/formatter/progress_spec.rb +3 -3
  73. data/spec/cucumber/parser/feature_parser_spec.rb +5 -5
  74. data/spec/cucumber/parser/table_parser_spec.rb +3 -3
  75. data/spec/cucumber/rb_support/rb_step_definition_spec.rb +7 -7
  76. data/spec/cucumber/rb_support/regexp_argument_matcher_spec.rb +1 -1
  77. data/spec/cucumber/step_match_spec.rb +6 -1
  78. data/spec/cucumber/step_mother_spec.rb +18 -10
  79. data/spec/cucumber/tag_expression_spec.rb +88 -90
  80. data/spec/cucumber/wire_support/configuration_spec.rb +29 -12
  81. data/spec/cucumber/wire_support/connection_spec.rb +1 -1
  82. data/spec/cucumber/wire_support/wire_exception_spec.rb +1 -1
  83. data/spec/cucumber/wire_support/wire_language_spec.rb +1 -1
  84. data/spec/cucumber/wire_support/wire_packet_spec.rb +1 -1
  85. data/spec/cucumber/wire_support/wire_step_definition_spec.rb +1 -1
  86. data/spec/cucumber/world/pending_spec.rb +5 -5
  87. metadata +128 -54
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../../spec_helper'
1
+ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
2
2
  require 'cucumber/rb_support/regexp_argument_matcher'
3
3
 
4
4
  module Cucumber
@@ -1,5 +1,5 @@
1
1
  # encoding: utf-8
2
- require File.dirname(__FILE__) + '/../spec_helper'
2
+ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
3
3
  require 'cucumber/rb_support/rb_step_definition'
4
4
  require 'cucumber/rb_support/rb_language'
5
5
 
@@ -57,5 +57,10 @@ module Cucumber
57
57
  m = step_match(/should( not)? be flashed '([^']*?)'$/, "I should be flashed 'Login failed.'")
58
58
  m.format_args("<span>%s</span>").should == "I should be flashed '<span>Login failed.</span>'"
59
59
  end
60
+
61
+ it "should format embedded groups" do
62
+ m = step_match(/running( (\d+) times)? (\d+) meters/, "running 5 times 10 meters")
63
+ m.format_args("<span>%s</span>").should == "running<span> 5 times</span> <span>10</span> meters"
64
+ end
60
65
  end
61
66
  end
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../spec_helper'
1
+ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
2
2
 
3
3
  require 'cucumber'
4
4
  require 'cucumber/rb_support/rb_language'
@@ -86,8 +86,8 @@ spec/cucumber/step_mother_spec.rb:48:in `/Three cute (.*)/'
86
86
  it "should pick most specific step definition when --guess is enabled and unequal number of capture groups" do
87
87
  @step_mother.options = {:guess => true}
88
88
  general = @dsl.Given(/Three (.*) mice ran (.*)/) {|disability|}
89
- specific = @dsl.Given(/Three blind mice ran far/) {}
90
- more_specific = @dsl.Given(/^Three blind mice ran far$/) {}
89
+ specific = @dsl.Given(/Three blind mice ran far/) do; end
90
+ more_specific = @dsl.Given(/^Three blind mice ran far$/) do; end
91
91
 
92
92
  @step_mother.step_match("Three blind mice ran far").step_definition.should == more_specific
93
93
  end
@@ -105,11 +105,10 @@ spec/cucumber/step_mother_spec.rb:48:in `/Three cute (.*)/'
105
105
  end
106
106
 
107
107
  it "should raise an error if the world is nil" do
108
- @dsl.World do
109
- end
108
+ @dsl.World {}
110
109
 
111
110
  begin
112
- @step_mother.before_and_after(nil) {}
111
+ @step_mother.before_and_after(nil) do; end
113
112
  raise "Should fail"
114
113
  rescue RbSupport::NilWorld => e
115
114
  e.message.should == "World procs should never return nil"
@@ -130,8 +129,8 @@ spec/cucumber/step_mother_spec.rb:48:in `/Three cute (.*)/'
130
129
  @dsl.World(ModuleOne, ModuleTwo)
131
130
  @step_mother.before(mock('scenario', :null_object => true))
132
131
  class << @rb.current_world
133
- included_modules.index(ModuleOne).should_not == nil
134
- included_modules.index(ModuleTwo).should_not == nil
132
+ included_modules.inspect.should =~ /ModuleOne/ # Workaround for RSpec/Ruby 1.9 issue with namespaces
133
+ included_modules.inspect.should =~ /ModuleTwo/
135
134
  end
136
135
  @rb.current_world.class.should == Object
137
136
  end
@@ -143,8 +142,8 @@ spec/cucumber/step_mother_spec.rb:48:in `/Three cute (.*)/'
143
142
  end.should raise_error(RbSupport::MultipleWorld, %{You can only pass a proc to #World once, but it's happening
144
143
  in 2 places:
145
144
 
146
- spec/cucumber/step_mother_spec.rb:140:in `World'
147
- spec/cucumber/step_mother_spec.rb:142:in `World'
145
+ spec/cucumber/step_mother_spec.rb:139:in `World'
146
+ spec/cucumber/step_mother_spec.rb:141:in `World'
148
147
 
149
148
  Use Ruby modules instead to extend your worlds. See the Cucumber::RbSupport::RbDsl#World RDoc
150
149
  or http://wiki.github.com/aslakhellesoy/cucumber/a-whole-new-world.
@@ -268,3 +267,12 @@ or http://wiki.github.com/aslakhellesoy/cucumber/a-whole-new-world.
268
267
  end
269
268
 
270
269
  end
270
+
271
+ module ModuleOne
272
+ end
273
+
274
+ module ModuleTwo
275
+ end
276
+
277
+ class ClassOne
278
+ end
@@ -1,126 +1,124 @@
1
- require File.dirname(__FILE__) + '/../spec_helper'
1
+ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
2
2
  require 'cucumber/tag_expression'
3
3
 
4
4
  module Cucumber
5
- module Ast
6
- describe TagExpression do
7
- context "no tags" do
8
- before(:each) do
9
- @e = TagExpression.new
10
- end
5
+ describe TagExpression do
6
+ context "no tags" do
7
+ before(:each) do
8
+ @e = TagExpression.new
9
+ end
11
10
 
12
- it "should match @foo" do
13
- @e.eval(['@foo']).should == true
14
- end
11
+ it "should match @foo" do
12
+ @e.eval(['@foo']).should == true
13
+ end
15
14
 
16
- it "should match empty tags" do
17
- @e.eval([]).should == true
18
- end
15
+ it "should match empty tags" do
16
+ @e.eval([]).should == true
19
17
  end
18
+ end
20
19
 
21
- context "@foo" do
22
- before(:each) do
23
- @e = TagExpression.new
24
- @e.add(['@foo'])
25
- end
20
+ context "@foo" do
21
+ before(:each) do
22
+ @e = TagExpression.new
23
+ @e.add(['@foo'])
24
+ end
26
25
 
27
- it "should match @foo" do
28
- @e.eval(['@foo']).should == true
29
- end
26
+ it "should match @foo" do
27
+ @e.eval(['@foo']).should == true
28
+ end
30
29
 
31
- it "should not match @bar" do
32
- @e.eval(['@bar']).should == false
33
- end
30
+ it "should not match @bar" do
31
+ @e.eval(['@bar']).should == false
34
32
  end
33
+ end
35
34
 
36
- context "!@foo" do
37
- before(:each) do
38
- @e = TagExpression.new
39
- @e.add(['~@foo'])
40
- end
35
+ context "!@foo" do
36
+ before(:each) do
37
+ @e = TagExpression.new
38
+ @e.add(['~@foo'])
39
+ end
41
40
 
42
- it "should match @bar" do
43
- @e.eval(['@bar']).should == true
44
- end
41
+ it "should match @bar" do
42
+ @e.eval(['@bar']).should == true
43
+ end
45
44
 
46
- it "should not match @foo" do
47
- @e.eval(['@foo']).should == false
48
- end
45
+ it "should not match @foo" do
46
+ @e.eval(['@foo']).should == false
49
47
  end
48
+ end
50
49
 
51
- context "@foo || @bar" do
52
- before(:each) do
53
- @e = TagExpression.new
54
- @e.add(['@foo', '@bar'])
55
- end
50
+ context "@foo || @bar" do
51
+ before(:each) do
52
+ @e = TagExpression.new
53
+ @e.add(['@foo', '@bar'])
54
+ end
56
55
 
57
- it "should match @foo" do
58
- @e.eval(['@foo']).should == true
59
- end
56
+ it "should match @foo" do
57
+ @e.eval(['@foo']).should == true
58
+ end
60
59
 
61
- it "should match @bar" do
62
- @e.eval(['@bar']).should == true
63
- end
60
+ it "should match @bar" do
61
+ @e.eval(['@bar']).should == true
62
+ end
64
63
 
65
- it "should not match @zap" do
66
- @e.eval(['@zap']).should == false
67
- end
64
+ it "should not match @zap" do
65
+ @e.eval(['@zap']).should == false
68
66
  end
67
+ end
69
68
 
70
- context "(@foo || @bar) && !@zap" do
71
- before(:each) do
72
- @e = TagExpression.new
73
- @e.add(['@foo', '@bar'])
74
- @e.add(['~@zap'])
75
- end
69
+ context "(@foo || @bar) && !@zap" do
70
+ before(:each) do
71
+ @e = TagExpression.new
72
+ @e.add(['@foo', '@bar'])
73
+ @e.add(['~@zap'])
74
+ end
76
75
 
77
- it "should match @foo" do
78
- @e.eval(['@foo']).should == true
79
- end
76
+ it "should match @foo" do
77
+ @e.eval(['@foo']).should == true
78
+ end
80
79
 
81
- it "should not match @foo @zap" do
82
- @e.eval(['@foo', '@zap']).should == false
83
- end
80
+ it "should not match @foo @zap" do
81
+ @e.eval(['@foo', '@zap']).should == false
84
82
  end
83
+ end
85
84
 
86
- context "(@foo:3 || !@bar:4) && @zap:5" do
87
- before(:each) do
88
- @e = TagExpression.new
89
- @e.add(['@foo:3', '~@bar'])
90
- @e.add(['@zap:5'])
91
- end
85
+ context "(@foo:3 || !@bar:4) && @zap:5" do
86
+ before(:each) do
87
+ @e = TagExpression.new
88
+ @e.add(['@foo:3', '~@bar'])
89
+ @e.add(['@zap:5'])
90
+ end
92
91
 
93
- it "should count tags for positive tags" do
94
- @e.limits.should == {'@foo' => 3, '@zap' => 5}
95
- end
92
+ it "should count tags for positive tags" do
93
+ @e.limits.should == {'@foo' => 3, '@zap' => 5}
94
+ end
96
95
 
97
- it "should match @foo @zap" do
98
- @e.eval(['@foo', '@zap']).should == true
99
- end
96
+ it "should match @foo @zap" do
97
+ @e.eval(['@foo', '@zap']).should == true
100
98
  end
99
+ end
101
100
 
102
- context "Parsing '@foo:3,~@bar', '@zap:5'" do
103
- before(:each) do
104
- @e = TagExpression.parse([' @foo:3 , ~@bar ', ' @zap:5 '])
105
- end
101
+ context "Parsing '@foo:3,~@bar', '@zap:5'" do
102
+ before(:each) do
103
+ @e = TagExpression.parse([' @foo:3 , ~@bar ', ' @zap:5 '])
104
+ end
106
105
 
107
- it "should split and trim" do
108
- @e.__send__(:ruby_expression).should == "(!vars['@bar']||vars['@foo'])&&(vars['@zap'])"
109
- end
106
+ it "should split and trim" do
107
+ @e.__send__(:ruby_expression).should == "(!vars['@bar']||vars['@foo'])&&(vars['@zap'])"
108
+ end
110
109
 
111
- it "should have limits" do
112
- @e.limits.should == {"@zap"=>5, "@foo"=>3}
113
- end
110
+ it "should have limits" do
111
+ @e.limits.should == {"@zap"=>5, "@foo"=>3}
114
112
  end
113
+ end
115
114
 
116
- context "Parsing ''" do
117
- before(:each) do
118
- @e = TagExpression.parse([''])
119
- end
115
+ context "Parsing ''" do
116
+ before(:each) do
117
+ @e = TagExpression.parse([''])
118
+ end
120
119
 
121
- it "should ignore empty tags" do
122
- @e.eval("@foo").should == true
123
- end
120
+ it "should ignore empty tags" do
121
+ @e.eval("@foo").should == true
124
122
  end
125
123
  end
126
124
  end
@@ -1,33 +1,50 @@
1
- require File.dirname(__FILE__) + '/../../spec_helper'
1
+ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
2
2
  require 'cucumber/wire_support/wire_language'
3
3
  require 'tempfile'
4
4
 
5
5
  module Cucumber
6
6
  module WireSupport
7
7
  describe Configuration do
8
- it "should read the hostname / port from the file" do
9
- wire_file = Tempfile.new('wire')
10
- wire_file << %q{
8
+ let(:wire_file) { Tempfile.new('wire') }
9
+ let(:config) { Configuration.new(wire_file.path) }
10
+
11
+ def write_wire_file(contents)
12
+ wire_file << contents
13
+ wire_file.close
14
+ end
15
+
16
+ it "reads the hostname / port from the file" do
17
+ write_wire_file %q{
11
18
  host: localhost
12
19
  port: 54321
13
20
  }
14
- wire_file.close
15
- config = Configuration.new(wire_file.path)
16
21
  config.host.should == 'localhost'
17
22
  config.port.should == 54321
18
23
  end
19
24
 
20
- it "should read the timeout for a specific message" do
21
- wire_file = Tempfile.new('wire')
22
- wire_file << %q{
25
+ it "reads the timeout for a specific message" do
26
+ write_wire_file %q{
23
27
  host: localhost
24
28
  port: 54321
25
29
  timeout:
26
30
  invoke: 99
27
31
  }
28
- wire_file.close
29
- config = Configuration.new(wire_file.path)
30
- config.timeout(:invoke).should == 99
32
+ config.timeout('invoke').should == 99
33
+ end
34
+
35
+ describe "a wire file with no timeouts specified" do
36
+ before(:each) do
37
+ write_wire_file %q{
38
+ host: localhost
39
+ port: 54321
40
+ }
41
+ end
42
+
43
+ %w(invoke begin_scenario end_scenario).each do |message|
44
+ it "sets the default timeout for '#{message}' to 120 seconds" do
45
+ config.timeout(message).should == 120
46
+ end
47
+ end
31
48
  end
32
49
  end
33
50
  end
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../../spec_helper'
1
+ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
2
2
  require 'cucumber/wire_support/wire_language'
3
3
 
4
4
  module Cucumber
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../../spec_helper'
1
+ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
2
2
  require 'cucumber/wire_support/wire_language'
3
3
 
4
4
  module Cucumber
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../../spec_helper'
1
+ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
2
2
  require 'cucumber/wire_support/wire_language'
3
3
 
4
4
  module Cucumber
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../../spec_helper'
1
+ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
2
2
  require 'cucumber/wire_support/wire_language'
3
3
 
4
4
  module Cucumber
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../../spec_helper'
1
+ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
2
2
  require 'cucumber/wire_support/wire_language'
3
3
 
4
4
  module Cucumber
@@ -1,4 +1,4 @@
1
- require File.dirname(__FILE__) + '/../../spec_helper'
1
+ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
2
2
  require 'cucumber/rb_support/rb_language'
3
3
 
4
4
  module Cucumber
@@ -13,7 +13,7 @@ module Cucumber
13
13
  it 'should raise a Pending if no block is supplied' do
14
14
  lambda {
15
15
  @world.pending "TODO"
16
- }.should raise_error(Pending, /TODO/)
16
+ }.should raise_error(Cucumber::Pending, /TODO/)
17
17
  end
18
18
 
19
19
  it 'should raise a Pending if a supplied block fails as expected' do
@@ -21,7 +21,7 @@ module Cucumber
21
21
  @world.pending "TODO" do
22
22
  raise "oops"
23
23
  end
24
- }.should raise_error(Pending, /TODO/)
24
+ }.should raise_error(Cucumber::Pending, /TODO/)
25
25
  end
26
26
 
27
27
  it 'should raise a Pending if a supplied block fails as expected with a mock' do
@@ -31,7 +31,7 @@ module Cucumber
31
31
  m.should_receive(:foo)
32
32
  m.rspec_verify
33
33
  end
34
- }.should raise_error(Pending, /TODO/)
34
+ }.should raise_error(Cucumber::Pending, /TODO/)
35
35
  end
36
36
 
37
37
  it 'should raise a Pending if a supplied block starts working' do
@@ -39,7 +39,7 @@ module Cucumber
39
39
  @world.pending "TODO" do
40
40
  # success!
41
41
  end
42
- }.should raise_error(Pending, /TODO/)
42
+ }.should raise_error(Cucumber::Pending, /TODO/)
43
43
  end
44
44
 
45
45
  end
metadata CHANGED
@@ -1,7 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cucumber
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.2
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 6
8
+ - 3
9
+ version: 0.6.3
5
10
  platform: ruby
6
11
  authors:
7
12
  - "Aslak Helles\xC3\xB8y"
@@ -9,129 +14,191 @@ autorequire:
9
14
  bindir: bin
10
15
  cert_chain: []
11
16
 
12
- date: 2010-01-18 00:00:00 +01:00
17
+ date: 2010-03-02 00:00:00 +01:00
13
18
  default_executable: cucumber
14
19
  dependencies:
15
20
  - !ruby/object:Gem::Dependency
16
21
  name: term-ansicolor
17
- type: :runtime
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
22
+ prerelease: false
23
+ requirement: &id001 !ruby/object:Gem::Requirement
20
24
  requirements:
21
25
  - - ">="
22
26
  - !ruby/object:Gem::Version
27
+ segments:
28
+ - 1
29
+ - 0
30
+ - 4
23
31
  version: 1.0.4
24
- version:
32
+ type: :runtime
33
+ version_requirements: *id001
25
34
  - !ruby/object:Gem::Dependency
26
35
  name: treetop
27
- type: :runtime
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
36
+ prerelease: false
37
+ requirement: &id002 !ruby/object:Gem::Requirement
30
38
  requirements:
31
39
  - - ">="
32
40
  - !ruby/object:Gem::Version
41
+ segments:
42
+ - 1
43
+ - 4
44
+ - 2
33
45
  version: 1.4.2
34
- version:
46
+ type: :runtime
47
+ version_requirements: *id002
35
48
  - !ruby/object:Gem::Dependency
36
49
  name: polyglot
37
- type: :runtime
38
- version_requirement:
39
- version_requirements: !ruby/object:Gem::Requirement
50
+ prerelease: false
51
+ requirement: &id003 !ruby/object:Gem::Requirement
40
52
  requirements:
41
53
  - - ">="
42
54
  - !ruby/object:Gem::Version
55
+ segments:
56
+ - 0
57
+ - 2
58
+ - 9
43
59
  version: 0.2.9
44
- version:
60
+ type: :runtime
61
+ version_requirements: *id003
45
62
  - !ruby/object:Gem::Dependency
46
63
  name: builder
47
- type: :runtime
48
- version_requirement:
49
- version_requirements: !ruby/object:Gem::Requirement
64
+ prerelease: false
65
+ requirement: &id004 !ruby/object:Gem::Requirement
50
66
  requirements:
51
67
  - - ">="
52
68
  - !ruby/object:Gem::Version
69
+ segments:
70
+ - 2
71
+ - 1
72
+ - 2
53
73
  version: 2.1.2
54
- version:
74
+ type: :runtime
75
+ version_requirements: *id004
55
76
  - !ruby/object:Gem::Dependency
56
77
  name: diff-lcs
57
- type: :runtime
58
- version_requirement:
59
- version_requirements: !ruby/object:Gem::Requirement
78
+ prerelease: false
79
+ requirement: &id005 !ruby/object:Gem::Requirement
60
80
  requirements:
61
81
  - - ">="
62
82
  - !ruby/object:Gem::Version
83
+ segments:
84
+ - 1
85
+ - 1
86
+ - 2
63
87
  version: 1.1.2
64
- version:
88
+ type: :runtime
89
+ version_requirements: *id005
65
90
  - !ruby/object:Gem::Dependency
66
91
  name: json_pure
67
- type: :runtime
68
- version_requirement:
69
- version_requirements: !ruby/object:Gem::Requirement
92
+ prerelease: false
93
+ requirement: &id006 !ruby/object:Gem::Requirement
70
94
  requirements:
71
95
  - - ">="
72
96
  - !ruby/object:Gem::Version
97
+ segments:
98
+ - 1
99
+ - 2
100
+ - 0
73
101
  version: 1.2.0
74
- version:
102
+ type: :runtime
103
+ version_requirements: *id006
75
104
  - !ruby/object:Gem::Dependency
76
105
  name: nokogiri
77
- type: :development
78
- version_requirement:
79
- version_requirements: !ruby/object:Gem::Requirement
106
+ prerelease: false
107
+ requirement: &id007 !ruby/object:Gem::Requirement
80
108
  requirements:
81
109
  - - ">="
82
110
  - !ruby/object:Gem::Version
111
+ segments:
112
+ - 1
113
+ - 4
114
+ - 1
83
115
  version: 1.4.1
84
- version:
116
+ type: :development
117
+ version_requirements: *id007
85
118
  - !ruby/object:Gem::Dependency
86
119
  name: prawn
87
- type: :development
88
- version_requirement:
89
- version_requirements: !ruby/object:Gem::Requirement
120
+ prerelease: false
121
+ requirement: &id008 !ruby/object:Gem::Requirement
90
122
  requirements:
91
123
  - - "="
92
124
  - !ruby/object:Gem::Version
125
+ segments:
126
+ - 0
127
+ - 6
128
+ - 3
93
129
  version: 0.6.3
94
- version:
130
+ type: :development
131
+ version_requirements: *id008
95
132
  - !ruby/object:Gem::Dependency
96
133
  name: prawn-format
97
- type: :development
98
- version_requirement:
99
- version_requirements: !ruby/object:Gem::Requirement
134
+ prerelease: false
135
+ requirement: &id009 !ruby/object:Gem::Requirement
100
136
  requirements:
101
137
  - - "="
102
138
  - !ruby/object:Gem::Version
139
+ segments:
140
+ - 0
141
+ - 2
142
+ - 3
103
143
  version: 0.2.3
104
- version:
144
+ type: :development
145
+ version_requirements: *id009
105
146
  - !ruby/object:Gem::Dependency
106
- name: rspec
147
+ name: htmlentities
148
+ prerelease: false
149
+ requirement: &id010 !ruby/object:Gem::Requirement
150
+ requirements:
151
+ - - ">="
152
+ - !ruby/object:Gem::Version
153
+ segments:
154
+ - 4
155
+ - 2
156
+ - 0
157
+ version: 4.2.0
107
158
  type: :development
108
- version_requirement:
109
- version_requirements: !ruby/object:Gem::Requirement
159
+ version_requirements: *id010
160
+ - !ruby/object:Gem::Dependency
161
+ name: rspec
162
+ prerelease: false
163
+ requirement: &id011 !ruby/object:Gem::Requirement
110
164
  requirements:
111
165
  - - ">="
112
166
  - !ruby/object:Gem::Version
167
+ segments:
168
+ - 1
169
+ - 3
170
+ - 0
113
171
  version: 1.3.0
114
- version:
172
+ type: :development
173
+ version_requirements: *id011
115
174
  - !ruby/object:Gem::Dependency
116
175
  name: syntax
117
- type: :development
118
- version_requirement:
119
- version_requirements: !ruby/object:Gem::Requirement
176
+ prerelease: false
177
+ requirement: &id012 !ruby/object:Gem::Requirement
120
178
  requirements:
121
179
  - - ">="
122
180
  - !ruby/object:Gem::Version
181
+ segments:
182
+ - 1
183
+ - 0
184
+ - 0
123
185
  version: 1.0.0
124
- version:
186
+ type: :development
187
+ version_requirements: *id012
125
188
  - !ruby/object:Gem::Dependency
126
189
  name: spork
127
- type: :development
128
- version_requirement:
129
- version_requirements: !ruby/object:Gem::Requirement
190
+ prerelease: false
191
+ requirement: &id013 !ruby/object:Gem::Requirement
130
192
  requirements:
131
193
  - - ">="
132
194
  - !ruby/object:Gem::Version
195
+ segments:
196
+ - 0
197
+ - 7
198
+ - 5
133
199
  version: 0.7.5
134
- version:
200
+ type: :development
201
+ version_requirements: *id013
135
202
  description: A BDD tool written in Ruby
136
203
  email: cukes@googlegroups.com
137
204
  executables:
@@ -429,11 +496,13 @@ files:
429
496
  - examples/tickets/features/301/filter_background_tagged_hooks.feature
430
497
  - examples/tickets/features/301/filter_background_tagged_hooks_steps.rb
431
498
  - examples/tickets/features/306/only_background.feature
499
+ - examples/tickets/features/half_manual.feature
432
500
  - examples/tickets/features/lib/eatting_machine.rb
433
501
  - examples/tickets/features/lib/pantry.rb
434
502
  - examples/tickets/features/scenario_outline.feature
435
503
  - examples/tickets/features/step_definitons/246_steps.rb
436
504
  - examples/tickets/features/step_definitons/248_steps.rb
505
+ - examples/tickets/features/step_definitons/half_manual_steps.rb
437
506
  - examples/tickets/features/step_definitons/scenario_outline_steps.rb
438
507
  - examples/tickets/features/step_definitons/tickets_steps.rb
439
508
  - examples/tickets/features/table_diffing.feature
@@ -477,6 +546,7 @@ files:
477
546
  - features/profiles.feature
478
547
  - features/rake_task.feature
479
548
  - features/report_called_undefined_steps.feature
549
+ - features/rerun_formatter.feature
480
550
  - features/simplest.feature
481
551
  - features/snippet.feature
482
552
  - features/step_definitions/cucumber_steps.rb
@@ -494,6 +564,7 @@ files:
494
564
  - features/usage_and_stepdefs_formatter.feature
495
565
  - features/wire_protocol.feature
496
566
  - features/wire_protocol_table_diffing.feature
567
+ - features/wire_protocol_tags.feature
497
568
  - features/wire_protocol_timeouts.feature
498
569
  - features/work_in_progress.feature
499
570
  - gem_tasks/contributors.rake
@@ -672,7 +743,7 @@ post_install_message: |+
672
743
 
673
744
  (::) U P G R A D I N G (::)
674
745
 
675
- Thank you for installing cucumber-0.6.2.
746
+ Thank you for installing cucumber-0.6.3.
676
747
  Please be sure to read http://wiki.github.com/aslakhellesoy/cucumber/upgrading
677
748
  for important information about this release. Happy cuking!
678
749
 
@@ -686,18 +757,20 @@ required_ruby_version: !ruby/object:Gem::Requirement
686
757
  requirements:
687
758
  - - ">="
688
759
  - !ruby/object:Gem::Version
760
+ segments:
761
+ - 0
689
762
  version: "0"
690
- version:
691
763
  required_rubygems_version: !ruby/object:Gem::Requirement
692
764
  requirements:
693
765
  - - ">="
694
766
  - !ruby/object:Gem::Version
767
+ segments:
768
+ - 0
695
769
  version: "0"
696
- version:
697
770
  requirements: []
698
771
 
699
772
  rubyforge_project: rspec
700
- rubygems_version: 1.3.5
773
+ rubygems_version: 1.3.6
701
774
  signing_key:
702
775
  specification_version: 3
703
776
  summary: Behaviour Driven Development with elegance and joy
@@ -851,6 +924,7 @@ test_files:
851
924
  - examples/tickets/features/lib/pantry.rb
852
925
  - examples/tickets/features/step_definitons/246_steps.rb
853
926
  - examples/tickets/features/step_definitons/248_steps.rb
927
+ - examples/tickets/features/step_definitons/half_manual_steps.rb
854
928
  - examples/tickets/features/step_definitons/scenario_outline_steps.rb
855
929
  - examples/tickets/features/step_definitons/tickets_steps.rb
856
930
  - examples/watir/features/step_definitions/search_steps.rb