cuke_modeler 1.2.1 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
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