cuke_modeler 0.2.0 → 0.3.0

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 (74) hide show
  1. checksums.yaml +7 -0
  2. data/.travis.yml +3 -0
  3. data/Gemfile +2 -1
  4. data/History.rdoc +9 -2
  5. data/Rakefile +10 -1
  6. data/cuke_modeler.gemspec +1 -1
  7. data/features/modeling/gherkin4/background_modeling.feature +64 -0
  8. data/features/modeling/gherkin4/background_output.feature +131 -0
  9. data/features/modeling/gherkin4/directory_modeling.feature +110 -0
  10. data/features/modeling/gherkin4/directory_output.feature +14 -0
  11. data/features/modeling/gherkin4/doc_string_modeling.feature +53 -0
  12. data/features/modeling/gherkin4/doc_string_output.feature +72 -0
  13. data/features/modeling/gherkin4/example_modeling.feature +100 -0
  14. data/features/modeling/gherkin4/example_output.feature +193 -0
  15. data/features/modeling/gherkin4/feature_file_modeling.feature +54 -0
  16. data/features/modeling/gherkin4/feature_file_output.feature +14 -0
  17. data/features/modeling/gherkin4/feature_modeling.feature +153 -0
  18. data/features/modeling/gherkin4/feature_output.feature +245 -0
  19. data/features/modeling/gherkin4/outline_modeling.feature +89 -0
  20. data/features/modeling/gherkin4/outline_output.feature +198 -0
  21. data/features/modeling/gherkin4/row_modeling.feature +68 -0
  22. data/features/modeling/gherkin4/row_output.feature +28 -0
  23. data/features/modeling/gherkin4/scenario_modeling.feature +78 -0
  24. data/features/modeling/gherkin4/scenario_output.feature +148 -0
  25. data/features/modeling/gherkin4/step_modeling.feature +75 -0
  26. data/features/modeling/gherkin4/step_output.feature +53 -0
  27. data/features/modeling/gherkin4/table_modeling.feature +42 -0
  28. data/features/modeling/gherkin4/table_output.feature +43 -0
  29. data/features/modeling/gherkin4/table_row_modeling.feature +57 -0
  30. data/features/modeling/gherkin4/table_row_output.feature +28 -0
  31. data/features/modeling/gherkin4/tag_modeling.feature +48 -0
  32. data/features/modeling/gherkin4/tag_output.feature +17 -0
  33. data/features/step_definitions/background_steps.rb +1 -1
  34. data/features/step_definitions/doc_string_steps.rb +1 -1
  35. data/features/step_definitions/feature_steps.rb +7 -4
  36. data/features/step_definitions/outline_steps.rb +2 -2
  37. data/features/step_definitions/step_steps.rb +2 -2
  38. data/features/step_definitions/table_steps.rb +1 -1
  39. data/features/step_definitions/tag_steps.rb +3 -3
  40. data/features/step_definitions/test_steps.rb +1 -1
  41. data/gemfiles/gherkin.gemfile +1 -0
  42. data/gemfiles/gherkin3.gemfile +2 -1
  43. data/gemfiles/gherkin4.gemfile +16 -0
  44. data/lib/cuke_modeler/adapters/gherkin_4_adapter.rb +220 -0
  45. data/lib/cuke_modeler/example.rb +1 -1
  46. data/lib/cuke_modeler/parsing.rb +73 -44
  47. data/lib/cuke_modeler/version.rb +1 -1
  48. data/spec/spec_helper.rb +10 -4
  49. data/spec/unit/background_unit_spec.rb +17 -9
  50. data/spec/unit/bare_bones_unit_specs.rb +3 -1
  51. data/spec/unit/containing_element_unit_specs.rb +3 -1
  52. data/spec/unit/directory_unit_spec.rb +5 -5
  53. data/spec/unit/doc_string_unit_spec.rb +13 -5
  54. data/spec/unit/example_unit_spec.rb +44 -9
  55. data/spec/unit/feature_element_unit_spec.rb +5 -5
  56. data/spec/unit/feature_element_unit_specs.rb +3 -1
  57. data/spec/unit/feature_file_unit_spec.rb +5 -5
  58. data/spec/unit/feature_unit_spec.rb +17 -9
  59. data/spec/unit/nested_element_unit_specs.rb +3 -1
  60. data/spec/unit/outline_unit_spec.rb +18 -10
  61. data/spec/unit/parsing_unit_spec.rb +2 -2
  62. data/spec/unit/prepopulated_unit_specs.rb +3 -1
  63. data/spec/unit/raw_element_unit_specs.rb +3 -1
  64. data/spec/unit/row_unit_spec.rb +15 -8
  65. data/spec/unit/scenario_unit_spec.rb +19 -11
  66. data/spec/unit/sourced_element_unit_specs.rb +3 -1
  67. data/spec/unit/step_unit_spec.rb +14 -6
  68. data/spec/unit/table_row_unit_spec.rb +15 -8
  69. data/spec/unit/table_unit_spec.rb +13 -5
  70. data/spec/unit/tag_unit_spec.rb +14 -6
  71. data/spec/unit/tagged_element_unit_specs.rb +3 -1
  72. data/spec/unit/test_element_unit_spec.rb +6 -6
  73. data/spec/unit/test_element_unit_specs.rb +3 -1
  74. metadata +86 -55
@@ -1,6 +1,8 @@
1
1
  require 'spec_helper'
2
2
 
3
- shared_examples_for 'a nested element' do |clazz|
3
+ shared_examples_for 'a nested element' do
4
+
5
+ # clazz must be defined by the calling file
4
6
 
5
7
  before(:each) do
6
8
  @nested_element = clazz.new
@@ -4,17 +4,17 @@ SimpleCov.command_name('Outline') unless RUBY_VERSION.to_s < '1.9.0'
4
4
 
5
5
  describe 'Outline, Unit' do
6
6
 
7
- clazz = CukeModeler::Outline
7
+ let(:clazz) { CukeModeler::Outline }
8
8
 
9
- it_should_behave_like 'a feature element', clazz
10
- it_should_behave_like 'a nested element', clazz
11
- it_should_behave_like 'a containing element', clazz
12
- it_should_behave_like 'a tagged element', clazz
13
- it_should_behave_like 'a bare bones element', clazz
14
- it_should_behave_like 'a prepopulated element', clazz
15
- it_should_behave_like 'a test element', clazz
16
- it_should_behave_like 'a sourced element', clazz
17
- it_should_behave_like 'a raw element', clazz
9
+ it_should_behave_like 'a feature element'
10
+ it_should_behave_like 'a nested element'
11
+ it_should_behave_like 'a containing element'
12
+ it_should_behave_like 'a tagged element'
13
+ it_should_behave_like 'a bare bones element'
14
+ it_should_behave_like 'a prepopulated element'
15
+ it_should_behave_like 'a test element'
16
+ it_should_behave_like 'a sourced element'
17
+ it_should_behave_like 'a raw element'
18
18
 
19
19
 
20
20
  it 'can be parsed from stand alone text' do
@@ -35,6 +35,14 @@ describe 'Outline, Unit' do
35
35
  expect { clazz.new(source) }.to raise_error(/'cuke_modeler_stand_alone_outline\.feature'/)
36
36
  end
37
37
 
38
+ it 'stores the original data generated by the parsing adapter', :gherkin4 => true do
39
+ outline = clazz.new("Scenario Outline: test outline\nExamples:\n|param|\n|value|")
40
+ raw_data = outline.raw_element
41
+
42
+ expect(raw_data.keys).to match_array([:type, :tags, :location, :keyword, :name, :steps, :examples])
43
+ expect(raw_data[:type]).to eq(:ScenarioOutline)
44
+ end
45
+
38
46
  it 'stores the original data generated by the parsing adapter', :gherkin3 => true do
39
47
  outline = clazz.new("Scenario Outline: test outline\nExamples:\n|param|\n|value|")
40
48
  raw_data = outline.raw_element
@@ -42,7 +42,7 @@ describe 'Parsing, Unit' do
42
42
  end
43
43
 
44
44
  # Monkey patch Gherkin to throw the error that we need for testing
45
- if Gem.loaded_specs['gherkin'].version.version[/^3/]
45
+ if Gem.loaded_specs['gherkin'].version.version[/^3|4/]
46
46
  old_method = Gherkin::Parser.instance_method(:parse)
47
47
 
48
48
  module Gherkin
@@ -69,7 +69,7 @@ describe 'Parsing, Unit' do
69
69
  expect { nodule.parse_text('bad file') }.to raise_error(/CukeModeler::TestError.*something went wrong/)
70
70
  ensure
71
71
  # Making sure that our changes don't escape a test and ruin the rest of the suite
72
- if Gem.loaded_specs['gherkin'].version.version[/^3/]
72
+ if Gem.loaded_specs['gherkin'].version.version[/^3|4/]
73
73
  Gherkin::Parser.send(:define_method, :parse, old_method)
74
74
  else
75
75
  Gherkin::Parser::Parser.send(:define_method, :parse, old_method)
@@ -1,6 +1,8 @@
1
1
  require 'spec_helper'
2
2
 
3
- shared_examples_for 'a prepopulated element' do |clazz|
3
+ shared_examples_for 'a prepopulated element' do
4
+
5
+ # clazz must be defined by the calling file
4
6
 
5
7
  before(:each) do
6
8
  @element = clazz.new
@@ -1,6 +1,8 @@
1
1
  require 'spec_helper'
2
2
 
3
- shared_examples_for 'a raw element' do |clazz|
3
+ shared_examples_for 'a raw element' do
4
+
5
+ # clazz must be defined by the calling file
4
6
 
5
7
  before(:each) do
6
8
  @element = clazz.new
@@ -4,13 +4,13 @@ SimpleCov.command_name('Row') unless RUBY_VERSION.to_s < '1.9.0'
4
4
 
5
5
  describe 'Row, Unit' do
6
6
 
7
- clazz = CukeModeler::Row
7
+ let(:clazz) { CukeModeler::Row }
8
8
 
9
- it_should_behave_like 'a nested element', clazz
10
- it_should_behave_like 'a bare bones element', clazz
11
- it_should_behave_like 'a prepopulated element', clazz
12
- it_should_behave_like 'a sourced element', clazz
13
- it_should_behave_like 'a raw element', clazz
9
+ it_should_behave_like 'a nested element'
10
+ it_should_behave_like 'a bare bones element'
11
+ it_should_behave_like 'a prepopulated element'
12
+ it_should_behave_like 'a sourced element'
13
+ it_should_behave_like 'a raw element'
14
14
 
15
15
  it 'can be parsed from stand alone text' do
16
16
  source = '| a | row |'
@@ -27,13 +27,20 @@ describe 'Row, Unit' do
27
27
  expect { clazz.new(source) }.to raise_error(/'cuke_modeler_stand_alone_row\.feature'/)
28
28
  end
29
29
 
30
+ it 'stores the original data generated by the parsing adapter', :gherkin4 => true do
31
+ example_row = clazz.new("| a | row |")
32
+ raw_data = example_row.raw_element
33
+
34
+ expect(raw_data.keys).to match_array([:type, :location, :cells])
35
+ expect(raw_data[:type]).to eq(:TableRow)
36
+ end
37
+
30
38
  it 'stores the original data generated by the parsing adapter', :gherkin3 => true do
31
39
  example_row = clazz.new("| a | row |")
32
40
  raw_data = example_row.raw_element
33
41
 
34
42
  expect(raw_data.keys).to match_array([:type, :location, :cells])
35
- expect(raw_data[:type]).to eq('TableRow') # Open bug in the gherkin gem. Should be a symbol like the others.
36
- # expect(raw_data[:type]).to eq(:TableRow)
43
+ expect(raw_data[:type]).to eq('TableRow')
37
44
  end
38
45
 
39
46
  it 'stores the original data generated by the parsing adapter', :gherkin2 => true do
@@ -4,17 +4,17 @@ SimpleCov.command_name('Scenario') unless RUBY_VERSION.to_s < '1.9.0'
4
4
 
5
5
  describe 'Scenario, Unit' do
6
6
 
7
- clazz = CukeModeler::Scenario
8
-
9
- it_should_behave_like 'a feature element', clazz
10
- it_should_behave_like 'a nested element', clazz
11
- it_should_behave_like 'a containing element', clazz
12
- it_should_behave_like 'a tagged element', clazz
13
- it_should_behave_like 'a bare bones element', clazz
14
- it_should_behave_like 'a prepopulated element', clazz
15
- it_should_behave_like 'a test element', clazz
16
- it_should_behave_like 'a sourced element', clazz
17
- it_should_behave_like 'a raw element', clazz
7
+ let(:clazz) { CukeModeler::Scenario }
8
+
9
+ it_should_behave_like 'a feature element'
10
+ it_should_behave_like 'a nested element'
11
+ it_should_behave_like 'a containing element'
12
+ it_should_behave_like 'a tagged element'
13
+ it_should_behave_like 'a bare bones element'
14
+ it_should_behave_like 'a prepopulated element'
15
+ it_should_behave_like 'a test element'
16
+ it_should_behave_like 'a sourced element'
17
+ it_should_behave_like 'a raw element'
18
18
 
19
19
  it 'can be parsed from stand alone text' do
20
20
  source = 'Scenario: test scenario'
@@ -31,6 +31,14 @@ describe 'Scenario, Unit' do
31
31
  expect { clazz.new(source) }.to raise_error(/'cuke_modeler_stand_alone_scenario\.feature'/)
32
32
  end
33
33
 
34
+ it 'stores the original data generated by the parsing adapter', :gherkin4 => true do
35
+ scenario = clazz.new("Scenario: test scenario")
36
+ raw_data = scenario.raw_element
37
+
38
+ expect(raw_data.keys).to match_array([:type, :tags, :location, :keyword, :name, :steps])
39
+ expect(raw_data[:type]).to eq(:Scenario)
40
+ end
41
+
34
42
  it 'stores the original data generated by the parsing adapter', :gherkin3 => true do
35
43
  scenario = clazz.new("Scenario: test scenario")
36
44
  raw_data = scenario.raw_element
@@ -1,6 +1,8 @@
1
1
  require 'spec_helper'
2
2
 
3
- shared_examples_for 'a sourced element' do |clazz|
3
+ shared_examples_for 'a sourced element' do
4
+
5
+ # clazz must be defined by the calling file
4
6
 
5
7
  before(:each) do
6
8
  @element = clazz.new
@@ -4,13 +4,13 @@ SimpleCov.command_name('Step') unless RUBY_VERSION.to_s < '1.9.0'
4
4
 
5
5
  describe 'Step, Unit' do
6
6
 
7
- clazz = CukeModeler::Step
7
+ let(:clazz) { CukeModeler::Step }
8
8
 
9
- it_should_behave_like 'a nested element', clazz
10
- it_should_behave_like 'a bare bones element', clazz
11
- it_should_behave_like 'a prepopulated element', clazz
12
- it_should_behave_like 'a sourced element', clazz
13
- it_should_behave_like 'a raw element', clazz
9
+ it_should_behave_like 'a nested element'
10
+ it_should_behave_like 'a bare bones element'
11
+ it_should_behave_like 'a prepopulated element'
12
+ it_should_behave_like 'a sourced element'
13
+ it_should_behave_like 'a raw element'
14
14
 
15
15
  before(:each) do
16
16
  @step = clazz.new
@@ -193,6 +193,14 @@ describe 'Step, Unit' do
193
193
  expect { clazz.new(source) }.to raise_error(/'cuke_modeler_stand_alone_step\.feature'/)
194
194
  end
195
195
 
196
+ it 'stores the original data generated by the parsing adapter', :gherkin4 => true do
197
+ step = clazz.new("* test step")
198
+ raw_data = step.raw_element
199
+
200
+ expect(raw_data.keys).to match_array([:type, :location, :keyword, :text])
201
+ expect(raw_data[:type]).to eq(:Step)
202
+ end
203
+
196
204
  it 'stores the original data generated by the parsing adapter', :gherkin3 => true do
197
205
  step = clazz.new("* test step")
198
206
  raw_data = step.raw_element
@@ -4,13 +4,13 @@ SimpleCov.command_name('TableRow') unless RUBY_VERSION.to_s < '1.9.0'
4
4
 
5
5
  describe 'TableRow, Unit' do
6
6
 
7
- clazz = CukeModeler::TableRow
7
+ let(:clazz) { CukeModeler::TableRow }
8
8
 
9
- it_should_behave_like 'a nested element', clazz
10
- it_should_behave_like 'a bare bones element', clazz
11
- it_should_behave_like 'a prepopulated element', clazz
12
- it_should_behave_like 'a sourced element', clazz
13
- it_should_behave_like 'a raw element', clazz
9
+ it_should_behave_like 'a nested element'
10
+ it_should_behave_like 'a bare bones element'
11
+ it_should_behave_like 'a prepopulated element'
12
+ it_should_behave_like 'a sourced element'
13
+ it_should_behave_like 'a raw element'
14
14
 
15
15
  it 'can be parsed from stand alone text' do
16
16
  source = '| a | row |'
@@ -27,13 +27,20 @@ describe 'TableRow, Unit' do
27
27
  expect { clazz.new(source) }.to raise_error(/'cuke_modeler_stand_alone_table_row\.feature'/)
28
28
  end
29
29
 
30
+ it 'stores the original data generated by the parsing adapter', :gherkin4 => true do
31
+ table_row = clazz.new("| a | row |")
32
+ raw_data = table_row.raw_element
33
+
34
+ expect(raw_data.keys).to match_array([:type, :location, :cells])
35
+ expect(raw_data[:type]).to eq(:TableRow)
36
+ end
37
+
30
38
  it 'stores the original data generated by the parsing adapter', :gherkin3 => true do
31
39
  table_row = clazz.new("| a | row |")
32
40
  raw_data = table_row.raw_element
33
41
 
34
42
  expect(raw_data.keys).to match_array([:type, :location, :cells])
35
- expect(raw_data[:type]).to eq('TableRow') # Open bug in the gherkin gem. Should be a symbol like the others.
36
- # expect(raw_data[:type]).to eq(:TableRow)
43
+ expect(raw_data[:type]).to eq('TableRow')
37
44
  end
38
45
 
39
46
  it 'stores the original data generated by the parsing adapter', :gherkin2 => true do
@@ -4,12 +4,12 @@ SimpleCov.command_name('Table') unless RUBY_VERSION.to_s < '1.9.0'
4
4
 
5
5
  describe 'Table, Unit' do
6
6
 
7
- clazz = CukeModeler::Table
7
+ let(:clazz) { CukeModeler::Table }
8
8
 
9
- it_should_behave_like 'a nested element', clazz
10
- it_should_behave_like 'a bare bones element', clazz
11
- it_should_behave_like 'a prepopulated element', clazz
12
- it_should_behave_like 'a raw element', clazz
9
+ it_should_behave_like 'a nested element'
10
+ it_should_behave_like 'a bare bones element'
11
+ it_should_behave_like 'a prepopulated element'
12
+ it_should_behave_like 'a raw element'
13
13
 
14
14
  it 'can be parsed from stand alone text' do
15
15
  source = '| a table |'
@@ -28,6 +28,14 @@ describe 'Table, Unit' do
28
28
  expect { clazz.new(source) }.to raise_error(/'cuke_modeler_stand_alone_table\.feature'/)
29
29
  end
30
30
 
31
+ it 'stores the original data generated by the parsing adapter', :gherkin4 => true do
32
+ table = clazz.new("| a table |")
33
+ raw_data = table.raw_element
34
+
35
+ expect(raw_data.keys).to match_array([:type, :location, :rows])
36
+ expect(raw_data[:type]).to eq(:DataTable)
37
+ end
38
+
31
39
  it 'stores the original data generated by the parsing adapter', :gherkin3 => true do
32
40
  table = clazz.new("| a table |")
33
41
  raw_data = table.raw_element
@@ -4,13 +4,13 @@ SimpleCov.command_name('Tag') unless RUBY_VERSION.to_s < '1.9.0'
4
4
 
5
5
  describe 'Tag, Unit' do
6
6
 
7
- clazz = CukeModeler::Tag
7
+ let(:clazz) { CukeModeler::Tag }
8
8
 
9
- it_should_behave_like 'a nested element', clazz
10
- it_should_behave_like 'a bare bones element', clazz
11
- it_should_behave_like 'a prepopulated element', clazz
12
- it_should_behave_like 'a sourced element', clazz
13
- it_should_behave_like 'a raw element', clazz
9
+ it_should_behave_like 'a nested element'
10
+ it_should_behave_like 'a bare bones element'
11
+ it_should_behave_like 'a prepopulated element'
12
+ it_should_behave_like 'a sourced element'
13
+ it_should_behave_like 'a raw element'
14
14
 
15
15
 
16
16
  it 'can be parsed from stand alone text' do
@@ -26,6 +26,14 @@ describe 'Tag, Unit' do
26
26
  expect { clazz.new(source) }.to raise_error(/'cuke_modeler_stand_alone_tag\.feature'/)
27
27
  end
28
28
 
29
+ it 'stores the original data generated by the parsing adapter', :gherkin4 => true do
30
+ tag = clazz.new('@a_tag')
31
+ raw_data = tag.raw_element
32
+
33
+ expect(raw_data.keys).to match_array([:type, :location, :name])
34
+ expect(raw_data[:type]).to eq(:Tag)
35
+ end
36
+
29
37
  it 'stores the original data generated by the parsing adapter', :gherkin3 => true do
30
38
  tag = clazz.new('@a_tag')
31
39
  raw_data = tag.raw_element
@@ -1,6 +1,8 @@
1
1
  require 'spec_helper'
2
2
 
3
- shared_examples_for 'a tagged element' do |clazz|
3
+ shared_examples_for 'a tagged element' do
4
+
5
+ # clazz must be defined by the calling file
4
6
 
5
7
  before(:each) do
6
8
  @element = clazz.new
@@ -4,13 +4,13 @@ SimpleCov.command_name('TestElement') unless RUBY_VERSION.to_s < '1.9.0'
4
4
 
5
5
  describe 'TestElement, Unit' do
6
6
 
7
- clazz = CukeModeler::TestElement
7
+ let(:clazz) { CukeModeler::TestElement }
8
8
 
9
- it_should_behave_like 'a test element', clazz
10
- it_should_behave_like 'a feature element', clazz
11
- it_should_behave_like 'a nested element', clazz
12
- it_should_behave_like 'a prepopulated element', clazz
13
- it_should_behave_like 'a bare bones element', clazz
9
+ it_should_behave_like 'a test element'
10
+ it_should_behave_like 'a feature element'
11
+ it_should_behave_like 'a nested element'
12
+ it_should_behave_like 'a prepopulated element'
13
+ it_should_behave_like 'a bare bones element'
14
14
 
15
15
 
16
16
  before(:each) do
@@ -1,6 +1,8 @@
1
1
  require 'spec_helper'
2
2
 
3
- shared_examples_for 'a test element' do |clazz|
3
+ shared_examples_for 'a test element' do
4
+
5
+ # clazz must be defined by the calling file
4
6
 
5
7
  before(:each) do
6
8
  @element = clazz.new
metadata CHANGED
@@ -1,174 +1,153 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cuke_modeler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
5
- prerelease:
4
+ version: 0.3.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Eric Kessler
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2016-02-21 00:00:00.000000000 Z
11
+ date: 2016-04-24 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: gherkin
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - <
17
+ - - "<"
20
18
  - !ruby/object:Gem::Version
21
- version: '4.0'
19
+ version: '5.0'
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
- version: '4.0'
26
+ version: '5.0'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: json
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.0'
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.0'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: multi_json
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ~>
45
+ - - "~>"
52
46
  - !ruby/object:Gem::Version
53
47
  version: '1.0'
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
61
54
  version: '1.0'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: bundler
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ~>
59
+ - - "~>"
68
60
  - !ruby/object:Gem::Version
69
61
  version: '1.5'
70
62
  type: :development
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
68
  version: '1.5'
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: rake
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ! '>='
73
+ - - ">="
84
74
  - !ruby/object:Gem::Version
85
75
  version: '0'
86
76
  type: :development
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ! '>='
80
+ - - ">="
92
81
  - !ruby/object:Gem::Version
93
82
  version: '0'
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: cucumber
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
- - - ! '>='
87
+ - - ">="
100
88
  - !ruby/object:Gem::Version
101
89
  version: '0'
102
90
  type: :development
103
91
  prerelease: false
104
92
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
93
  requirements:
107
- - - ! '>='
94
+ - - ">="
108
95
  - !ruby/object:Gem::Version
109
96
  version: '0'
110
97
  - !ruby/object:Gem::Dependency
111
98
  name: rspec
112
99
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
100
  requirements:
115
- - - ~>
101
+ - - "~>"
116
102
  - !ruby/object:Gem::Version
117
103
  version: 2.14.0
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
107
  requirements:
123
- - - ~>
108
+ - - "~>"
124
109
  - !ruby/object:Gem::Version
125
110
  version: 2.14.0
126
111
  - !ruby/object:Gem::Dependency
127
112
  name: simplecov
128
113
  requirement: !ruby/object:Gem::Requirement
129
- none: false
130
114
  requirements:
131
- - - ! '>='
115
+ - - ">="
132
116
  - !ruby/object:Gem::Version
133
117
  version: '0'
134
118
  type: :development
135
119
  prerelease: false
136
120
  version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
121
  requirements:
139
- - - ! '>='
122
+ - - ">="
140
123
  - !ruby/object:Gem::Version
141
124
  version: '0'
142
125
  - !ruby/object:Gem::Dependency
143
126
  name: racatt
144
127
  requirement: !ruby/object:Gem::Requirement
145
- none: false
146
128
  requirements:
147
- - - ~>
129
+ - - "~>"
148
130
  - !ruby/object:Gem::Version
149
131
  version: '1.0'
150
132
  type: :development
151
133
  prerelease: false
152
134
  version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
135
  requirements:
155
- - - ~>
136
+ - - "~>"
156
137
  - !ruby/object:Gem::Version
157
138
  version: '1.0'
158
139
  - !ruby/object:Gem::Dependency
159
140
  name: coveralls
160
141
  requirement: !ruby/object:Gem::Requirement
161
- none: false
162
142
  requirements:
163
- - - ! '>='
143
+ - - ">="
164
144
  - !ruby/object:Gem::Version
165
145
  version: '0'
166
146
  type: :development
167
147
  prerelease: false
168
148
  version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
149
  requirements:
171
- - - ! '>='
150
+ - - ">="
172
151
  - !ruby/object:Gem::Version
173
152
  version: '0'
174
153
  description:
@@ -178,9 +157,9 @@ executables: []
178
157
  extensions: []
179
158
  extra_rdoc_files: []
180
159
  files:
181
- - .gitignore
182
- - .simplecov
183
- - .travis.yml
160
+ - ".gitignore"
161
+ - ".simplecov"
162
+ - ".travis.yml"
184
163
  - Gemfile
185
164
  - History.rdoc
186
165
  - LICENSE.txt
@@ -241,6 +220,32 @@ files:
241
220
  - features/modeling/gherkin3/table_row_output.feature
242
221
  - features/modeling/gherkin3/tag_modeling.feature
243
222
  - features/modeling/gherkin3/tag_output.feature
223
+ - features/modeling/gherkin4/background_modeling.feature
224
+ - features/modeling/gherkin4/background_output.feature
225
+ - features/modeling/gherkin4/directory_modeling.feature
226
+ - features/modeling/gherkin4/directory_output.feature
227
+ - features/modeling/gherkin4/doc_string_modeling.feature
228
+ - features/modeling/gherkin4/doc_string_output.feature
229
+ - features/modeling/gherkin4/example_modeling.feature
230
+ - features/modeling/gherkin4/example_output.feature
231
+ - features/modeling/gherkin4/feature_file_modeling.feature
232
+ - features/modeling/gherkin4/feature_file_output.feature
233
+ - features/modeling/gherkin4/feature_modeling.feature
234
+ - features/modeling/gherkin4/feature_output.feature
235
+ - features/modeling/gherkin4/outline_modeling.feature
236
+ - features/modeling/gherkin4/outline_output.feature
237
+ - features/modeling/gherkin4/row_modeling.feature
238
+ - features/modeling/gherkin4/row_output.feature
239
+ - features/modeling/gherkin4/scenario_modeling.feature
240
+ - features/modeling/gherkin4/scenario_output.feature
241
+ - features/modeling/gherkin4/step_modeling.feature
242
+ - features/modeling/gherkin4/step_output.feature
243
+ - features/modeling/gherkin4/table_modeling.feature
244
+ - features/modeling/gherkin4/table_output.feature
245
+ - features/modeling/gherkin4/table_row_modeling.feature
246
+ - features/modeling/gherkin4/table_row_output.feature
247
+ - features/modeling/gherkin4/tag_modeling.feature
248
+ - features/modeling/gherkin4/tag_output.feature
244
249
  - features/step_definitions/action_steps.rb
245
250
  - features/step_definitions/background_steps.rb
246
251
  - features/step_definitions/directory_steps.rb
@@ -258,9 +263,11 @@ files:
258
263
  - features/support/transforms.rb
259
264
  - gemfiles/gherkin.gemfile
260
265
  - gemfiles/gherkin3.gemfile
266
+ - gemfiles/gherkin4.gemfile
261
267
  - lib/cuke_modeler.rb
262
268
  - lib/cuke_modeler/adapters/gherkin_2_adapter.rb
263
269
  - lib/cuke_modeler/adapters/gherkin_3_adapter.rb
270
+ - lib/cuke_modeler/adapters/gherkin_4_adapter.rb
264
271
  - lib/cuke_modeler/background.rb
265
272
  - lib/cuke_modeler/containing.rb
266
273
  - lib/cuke_modeler/directory.rb
@@ -331,27 +338,26 @@ files:
331
338
  homepage: https://github.com/enkessler/cuke_modeler
332
339
  licenses:
333
340
  - MIT
341
+ metadata: {}
334
342
  post_install_message:
335
343
  rdoc_options: []
336
344
  require_paths:
337
345
  - lib
338
346
  required_ruby_version: !ruby/object:Gem::Requirement
339
- none: false
340
347
  requirements:
341
- - - ! '>='
348
+ - - ">="
342
349
  - !ruby/object:Gem::Version
343
350
  version: '0'
344
351
  required_rubygems_version: !ruby/object:Gem::Requirement
345
- none: false
346
352
  requirements:
347
- - - ! '>='
353
+ - - ">="
348
354
  - !ruby/object:Gem::Version
349
355
  version: '0'
350
356
  requirements: []
351
357
  rubyforge_project:
352
- rubygems_version: 1.8.29
358
+ rubygems_version: 2.4.5.1
353
359
  signing_key:
354
- specification_version: 3
360
+ specification_version: 4
355
361
  summary: A gem providing functionality to model a Cucumber test suite.
356
362
  test_files:
357
363
  - features/analysis/test_comparison.feature
@@ -408,6 +414,32 @@ test_files:
408
414
  - features/modeling/gherkin3/table_row_output.feature
409
415
  - features/modeling/gherkin3/tag_modeling.feature
410
416
  - features/modeling/gherkin3/tag_output.feature
417
+ - features/modeling/gherkin4/background_modeling.feature
418
+ - features/modeling/gherkin4/background_output.feature
419
+ - features/modeling/gherkin4/directory_modeling.feature
420
+ - features/modeling/gherkin4/directory_output.feature
421
+ - features/modeling/gherkin4/doc_string_modeling.feature
422
+ - features/modeling/gherkin4/doc_string_output.feature
423
+ - features/modeling/gherkin4/example_modeling.feature
424
+ - features/modeling/gherkin4/example_output.feature
425
+ - features/modeling/gherkin4/feature_file_modeling.feature
426
+ - features/modeling/gherkin4/feature_file_output.feature
427
+ - features/modeling/gherkin4/feature_modeling.feature
428
+ - features/modeling/gherkin4/feature_output.feature
429
+ - features/modeling/gherkin4/outline_modeling.feature
430
+ - features/modeling/gherkin4/outline_output.feature
431
+ - features/modeling/gherkin4/row_modeling.feature
432
+ - features/modeling/gherkin4/row_output.feature
433
+ - features/modeling/gherkin4/scenario_modeling.feature
434
+ - features/modeling/gherkin4/scenario_output.feature
435
+ - features/modeling/gherkin4/step_modeling.feature
436
+ - features/modeling/gherkin4/step_output.feature
437
+ - features/modeling/gherkin4/table_modeling.feature
438
+ - features/modeling/gherkin4/table_output.feature
439
+ - features/modeling/gherkin4/table_row_modeling.feature
440
+ - features/modeling/gherkin4/table_row_output.feature
441
+ - features/modeling/gherkin4/tag_modeling.feature
442
+ - features/modeling/gherkin4/tag_output.feature
411
443
  - features/step_definitions/action_steps.rb
412
444
  - features/step_definitions/background_steps.rb
413
445
  - features/step_definitions/directory_steps.rb
@@ -467,4 +499,3 @@ test_files:
467
499
  - spec/unit/test_element_unit_spec.rb
468
500
  - spec/unit/test_element_unit_specs.rb
469
501
  - spec/unit/world_unit_spec.rb
470
- has_rdoc: