cuke_modeler 1.2.1 → 1.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 (86) hide show
  1. checksums.yaml +4 -4
  2. data/.simplecov +1 -2
  3. data/.travis.yml +4 -3
  4. data/Gemfile +1 -1
  5. data/History.md +5 -0
  6. data/README.md +2 -1
  7. data/Rakefile +19 -0
  8. data/appveyor.yml +19 -18
  9. data/cuke_modeler.gemspec +1 -1
  10. data/lib/cuke_modeler/adapters/gherkin_4_adapter.rb +1 -1
  11. data/lib/cuke_modeler/parsing.rb +1 -1
  12. data/lib/cuke_modeler/version.rb +1 -1
  13. data/testing/cucumber/features/analysis/test_comparison.feature +1 -4
  14. data/testing/cucumber/features/modeling/background_modeling.feature +1 -2
  15. data/testing/cucumber/features/modeling/background_output.feature +1 -2
  16. data/testing/cucumber/features/modeling/cell_modeling.feature +1 -2
  17. data/testing/cucumber/features/modeling/comment_modeling.feature +1 -2
  18. data/testing/cucumber/features/modeling/comment_output.feature +1 -2
  19. data/testing/cucumber/features/modeling/directory_modeling.feature +1 -4
  20. data/testing/cucumber/features/modeling/directory_output.feature +1 -2
  21. data/testing/cucumber/features/modeling/doc_string_modeling.feature +1 -3
  22. data/testing/cucumber/features/modeling/doc_string_output.feature +1 -2
  23. data/testing/cucumber/features/modeling/example_modeling.feature +1 -3
  24. data/testing/cucumber/features/modeling/example_output.feature +1 -2
  25. data/testing/cucumber/features/modeling/feature_file_modeling.feature +1 -3
  26. data/testing/cucumber/features/modeling/feature_file_output.feature +1 -2
  27. data/testing/cucumber/features/modeling/feature_modeling.feature +2 -5
  28. data/testing/cucumber/features/modeling/feature_output.feature +1 -2
  29. data/testing/cucumber/features/modeling/model_output.feature +1 -3
  30. data/testing/cucumber/features/modeling/model_structure.feature +3 -9
  31. data/testing/cucumber/features/modeling/outline_modeling.feature +1 -2
  32. data/testing/cucumber/features/modeling/outline_output.feature +1 -2
  33. data/testing/cucumber/features/modeling/row_modeling.feature +1 -2
  34. data/testing/cucumber/features/modeling/row_output.feature +1 -2
  35. data/testing/cucumber/features/modeling/scenario_modeling.feature +1 -2
  36. data/testing/cucumber/features/modeling/scenario_output.feature +1 -2
  37. data/testing/cucumber/features/modeling/step_modeling.feature +1 -2
  38. data/testing/cucumber/features/modeling/step_output.feature +1 -2
  39. data/testing/cucumber/features/modeling/table_modeling.feature +1 -2
  40. data/testing/cucumber/features/modeling/table_output.feature +1 -2
  41. data/testing/cucumber/features/modeling/tag_modeling.feature +1 -2
  42. data/testing/cucumber/features/modeling/tag_output.feature +1 -2
  43. data/testing/cucumber/step_definitions/directory_steps.rb +1 -1
  44. data/testing/cucumber/step_definitions/feature_file_steps.rb +1 -1
  45. data/testing/cucumber/step_definitions/modeling_steps.rb +1 -1
  46. data/testing/cucumber/step_definitions/setup_steps.rb +4 -6
  47. data/testing/cucumber/step_definitions/verification_steps.rb +3 -3
  48. data/testing/cucumber/support/env.rb +7 -14
  49. data/testing/file_helper.rb +44 -0
  50. data/testing/gemfiles/gherkin5.gemfile +20 -0
  51. data/testing/rspec/spec/integration/background_integration_spec.rb +17 -15
  52. data/testing/rspec/spec/integration/cell_integration_spec.rb +69 -79
  53. data/testing/rspec/spec/integration/comment_integration_spec.rb +16 -15
  54. data/testing/rspec/spec/integration/directory_integration_spec.rb +46 -55
  55. data/testing/rspec/spec/integration/doc_string_integration_spec.rb +73 -80
  56. data/testing/rspec/spec/integration/example_integration_spec.rb +53 -36
  57. data/testing/rspec/spec/integration/feature_file_integration_spec.rb +27 -42
  58. data/testing/rspec/spec/integration/feature_integration_spec.rb +12 -11
  59. data/testing/rspec/spec/integration/gherkin_2_adapter_spec.rb +14 -16
  60. data/testing/rspec/spec/integration/gherkin_3_adapter_spec.rb +14 -16
  61. data/testing/rspec/spec/integration/gherkin_4_adapter_spec.rb +14 -16
  62. data/testing/rspec/spec/integration/outline_integration_spec.rb +20 -18
  63. data/testing/rspec/spec/integration/parsing_integration_spec.rb +1 -1
  64. data/testing/rspec/spec/integration/row_integration_spec.rb +57 -64
  65. data/testing/rspec/spec/integration/scenario_integration_spec.rb +17 -15
  66. data/testing/rspec/spec/integration/step_integration_spec.rb +48 -55
  67. data/testing/rspec/spec/integration/table_integration_spec.rb +54 -61
  68. data/testing/rspec/spec/integration/tag_integration_spec.rb +61 -67
  69. data/testing/rspec/spec/spec_helper.rb +5 -16
  70. data/testing/rspec/spec/unit/background_unit_spec.rb +0 -5
  71. data/testing/rspec/spec/unit/cell_unit_spec.rb +0 -5
  72. data/testing/rspec/spec/unit/comment_unit_spec.rb +0 -6
  73. data/testing/rspec/spec/unit/directory_unit_spec.rb +0 -5
  74. data/testing/rspec/spec/unit/doc_string_unit_spec.rb +0 -5
  75. data/testing/rspec/spec/unit/example_unit_spec.rb +0 -5
  76. data/testing/rspec/spec/unit/feature_file_unit_spec.rb +0 -5
  77. data/testing/rspec/spec/unit/feature_unit_spec.rb +0 -5
  78. data/testing/rspec/spec/unit/outline_unit_spec.rb +0 -5
  79. data/testing/rspec/spec/unit/row_unit_spec.rb +0 -5
  80. data/testing/rspec/spec/unit/scenario_unit_spec.rb +0 -5
  81. data/testing/rspec/spec/unit/shared/stringifiable_models_unit_specs.rb +1 -1
  82. data/testing/rspec/spec/unit/step_unit_spec.rb +0 -5
  83. data/testing/rspec/spec/unit/table_unit_spec.rb +0 -5
  84. data/testing/rspec/spec/unit/tag_unit_spec.rb +0 -5
  85. data/todo.txt +0 -4
  86. metadata +6 -4
@@ -109,11 +109,6 @@ describe 'Directory, Unit', :unit_test => true do
109
109
 
110
110
  describe 'directory output' do
111
111
 
112
- it 'is a String' do
113
- expect(directory.to_s).to be_a(String)
114
- end
115
-
116
-
117
112
  context 'from abstract instantiation' do
118
113
 
119
114
  let(:directory) { clazz.new }
@@ -66,11 +66,6 @@ describe 'DocString, Unit', :unit_test => true do
66
66
 
67
67
  describe 'doc string output' do
68
68
 
69
- it 'is a String' do
70
- expect(doc_string.to_s).to be_a(String)
71
- end
72
-
73
-
74
69
  context 'from abstract instantiation' do
75
70
 
76
71
  context 'a new doc string object' do
@@ -97,11 +97,6 @@ describe 'Example, Unit', :unit_test => true do
97
97
 
98
98
  describe 'example output' do
99
99
 
100
- it 'is a String' do
101
- expect(example.to_s).to be_a(String)
102
- end
103
-
104
-
105
100
  context 'from abstract instantiation' do
106
101
 
107
102
  let(:example) { clazz.new }
@@ -107,11 +107,6 @@ describe 'FeatureFile, Unit', :unit_test => true do
107
107
 
108
108
  describe 'feature file output' do
109
109
 
110
- it 'is a String' do
111
- expect(feature_file.to_s).to be_a(String)
112
- end
113
-
114
-
115
110
  context 'from abstract instantiation' do
116
111
 
117
112
  let(:feature_file) { clazz.new }
@@ -121,11 +121,6 @@ describe 'Feature, Unit', :unit_test => true do
121
121
 
122
122
  describe 'feature output' do
123
123
 
124
- it 'is a String' do
125
- expect(feature.to_s).to be_a(String)
126
- end
127
-
128
-
129
124
  context 'from abstract instantiation' do
130
125
 
131
126
  let(:feature) { clazz.new }
@@ -81,11 +81,6 @@ describe 'Outline, Unit', :unit_test => true do
81
81
 
82
82
  describe 'outline output' do
83
83
 
84
- it 'is a String' do
85
- expect(outline.to_s).to be_a(String)
86
- end
87
-
88
-
89
84
  context 'from abstract instantiation' do
90
85
 
91
86
  let(:outline) { clazz.new }
@@ -50,11 +50,6 @@ describe 'Row, Unit', :unit_test => true do
50
50
 
51
51
  describe 'row output' do
52
52
 
53
- it 'is a String' do
54
- expect(row.to_s).to be_a(String)
55
- end
56
-
57
-
58
53
  context 'from abstract instantiation' do
59
54
 
60
55
  let(:row) { clazz.new }
@@ -50,11 +50,6 @@ describe 'Scenario, Unit', :unit_test => true do
50
50
 
51
51
  describe 'scenario output' do
52
52
 
53
- it 'is a String' do
54
- expect(scenario.to_s).to be_a(String)
55
- end
56
-
57
-
58
53
  context 'from abstract instantiation' do
59
54
 
60
55
  let(:scenario) { clazz.new }
@@ -11,7 +11,7 @@ shared_examples_for 'a stringifiable model' do
11
11
  expect(model.method(:to_s).owner).to equal(clazz), "#{clazz} does not override #to_s"
12
12
  end
13
13
 
14
- it 'represents itself with as a string' do
14
+ it 'represents itself as a string' do
15
15
  expect(model.to_s).to be_a(String)
16
16
  end
17
17
 
@@ -77,11 +77,6 @@ describe 'Step, Unit', :unit_test => true do
77
77
 
78
78
  describe 'step output' do
79
79
 
80
- it 'is a String' do
81
- expect(step.to_s).to be_a(String)
82
- end
83
-
84
-
85
80
  context 'from abstract instantiation' do
86
81
 
87
82
  let(:step) { clazz.new }
@@ -59,11 +59,6 @@ describe 'Table, Unit', :unit_test => true do
59
59
 
60
60
  describe 'table output' do
61
61
 
62
- it 'is a String' do
63
- expect(table.to_s).to be_a(String)
64
- end
65
-
66
-
67
62
  context 'from abstract instantiation' do
68
63
 
69
64
  let(:table) { clazz.new }
@@ -52,11 +52,6 @@ describe 'Tag, Unit', :unit_test => true do
52
52
 
53
53
  describe 'tag output' do
54
54
 
55
- it 'is a String' do
56
- expect(model.to_s).to be_a(String)
57
- end
58
-
59
-
60
55
  context 'from abstract instantiation' do
61
56
 
62
57
  let(:tag) { clazz.new }
data/todo.txt CHANGED
@@ -7,7 +7,6 @@ replace copying raw data during adaptation (all of the Marshal#load/#unload call
7
7
 
8
8
  document helper modules as not part of the public API
9
9
 
10
- # todo - remove hard coded newlines in feature files so that Relish and other text editors can wrap them on its own
11
10
  # todo - incorporate cuke_modeler extensions from other projects
12
11
  # todo - add plenty of testing around weird and minimal gherkin text for all models
13
12
 
@@ -18,9 +17,6 @@ Backlog
18
17
  Include comments in the string output of a feature file
19
18
 
20
19
  replace joined array source text with single string source text/heredocs
21
- Don't bother to test directory create/destroy around unit tests
22
20
  unit testing around parsing/modeling cases (whitespace, indentation, minimalistic feature elements, etc.)
23
21
  replace "\n" usages with the currently set record separator (i.e "\$" )
24
- Fix transient test failures (permission denied file access problems)
25
22
  make sure that all classes and tests are covered and attaches to code coverage
26
- use 'here doc' for source text construction in rspec tests
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cuke_modeler
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eric Kessler
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-04-26 00:00:00.000000000 Z
11
+ date: 2017-10-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gherkin
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "<"
18
18
  - !ruby/object:Gem::Version
19
- version: '5.0'
19
+ version: '6.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "<"
25
25
  - !ruby/object:Gem::Version
26
- version: '5.0'
26
+ version: '6.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: json
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -253,9 +253,11 @@ files:
253
253
  - testing/cucumber/support/env.rb
254
254
  - testing/cucumber/support/transforms.rb
255
255
  - testing/dialect_helper.rb
256
+ - testing/file_helper.rb
256
257
  - testing/gemfiles/gherkin2.gemfile
257
258
  - testing/gemfiles/gherkin3.gemfile
258
259
  - testing/gemfiles/gherkin4.gemfile
260
+ - testing/gemfiles/gherkin5.gemfile
259
261
  - testing/rspec/spec/integration/background_integration_spec.rb
260
262
  - testing/rspec/spec/integration/cell_integration_spec.rb
261
263
  - testing/rspec/spec/integration/comment_integration_spec.rb