cuke_modeler 1.3.0 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (90) hide show
  1. checksums.yaml +5 -5
  2. data/.travis.yml +60 -17
  3. data/CHANGELOG.md +312 -0
  4. data/Gemfile +19 -3
  5. data/LICENSE.txt +1 -1
  6. data/README.md +17 -7
  7. data/Rakefile +45 -28
  8. data/appveyor.yml +57 -17
  9. data/cuke_modeler.gemspec +6 -3
  10. data/lib/cuke_modeler/adapters/gherkin_2_adapter.rb +1 -0
  11. data/lib/cuke_modeler/adapters/gherkin_3_adapter.rb +1 -0
  12. data/lib/cuke_modeler/adapters/gherkin_4_adapter.rb +2 -1
  13. data/lib/cuke_modeler/adapters/gherkin_5_adapter.rb +12 -0
  14. data/lib/cuke_modeler/adapters/gherkin_6_adapter.rb +310 -0
  15. data/lib/cuke_modeler/adapters/gherkin_7_adapter.rb +307 -0
  16. data/lib/cuke_modeler/adapters/gherkin_8_adapter.rb +12 -0
  17. data/lib/cuke_modeler/adapters/gherkin_9_adapter.rb +12 -0
  18. data/lib/cuke_modeler/containing.rb +16 -0
  19. data/lib/cuke_modeler/described.rb +1 -0
  20. data/lib/cuke_modeler/models/step.rb +31 -2
  21. data/lib/cuke_modeler/named.rb +1 -0
  22. data/lib/cuke_modeler/nested.rb +1 -0
  23. data/lib/cuke_modeler/parsed.rb +1 -0
  24. data/lib/cuke_modeler/parsing.rb +116 -68
  25. data/lib/cuke_modeler/sourceable.rb +1 -0
  26. data/lib/cuke_modeler/stepped.rb +1 -0
  27. data/lib/cuke_modeler/taggable.rb +1 -0
  28. data/lib/cuke_modeler/version.rb +1 -1
  29. data/testing/cucumber/features/analysis/step_comparison.feature +25 -0
  30. data/testing/cucumber/features/analysis/test_comparison.feature +1 -1
  31. data/testing/cucumber/step_definitions/feature_file_steps.rb +1 -1
  32. data/testing/cucumber/step_definitions/modeling_steps.rb +7 -2
  33. data/testing/cucumber/step_definitions/verification_steps.rb +11 -2
  34. data/testing/file_helper.rb +3 -0
  35. data/testing/gemfiles/gherkin2.gemfile +8 -0
  36. data/testing/gemfiles/gherkin3.gemfile +6 -0
  37. data/testing/gemfiles/gherkin4.gemfile +7 -0
  38. data/testing/gemfiles/gherkin5.gemfile +7 -0
  39. data/testing/gemfiles/gherkin6.gemfile +10 -0
  40. data/testing/gemfiles/gherkin7.gemfile +9 -0
  41. data/testing/gemfiles/gherkin8.gemfile +9 -0
  42. data/testing/gemfiles/gherkin9.gemfile +9 -0
  43. data/testing/helper_methods.rb +23 -0
  44. data/testing/rspec/spec/integration/{gherkin_2_adapter_spec.rb → adapters/gherkin_2_adapter_spec.rb} +13 -13
  45. data/testing/rspec/spec/integration/{gherkin_3_adapter_spec.rb → adapters/gherkin_3_adapter_spec.rb} +13 -13
  46. data/testing/rspec/spec/integration/{gherkin_4_adapter_spec.rb → adapters/gherkin_4_adapter_spec.rb} +13 -13
  47. data/testing/rspec/spec/integration/adapters/gherkin_5_adapter_spec.rb +165 -0
  48. data/testing/rspec/spec/integration/adapters/gherkin_6_adapter_spec.rb +159 -0
  49. data/testing/rspec/spec/integration/adapters/gherkin_7_adapter_spec.rb +162 -0
  50. data/testing/rspec/spec/integration/adapters/gherkin_8_adapter_spec.rb +162 -0
  51. data/testing/rspec/spec/integration/adapters/gherkin_9_adapter_spec.rb +162 -0
  52. data/testing/rspec/spec/integration/{background_integration_spec.rb → models/background_integration_spec.rb} +90 -86
  53. data/testing/rspec/spec/integration/{cell_integration_spec.rb → models/cell_integration_spec.rb} +49 -38
  54. data/testing/rspec/spec/integration/{comment_integration_spec.rb → models/comment_integration_spec.rb} +31 -20
  55. data/testing/rspec/spec/integration/{directory_integration_spec.rb → models/directory_integration_spec.rb} +3 -3
  56. data/testing/rspec/spec/integration/{doc_string_integration_spec.rb → models/doc_string_integration_spec.rb} +39 -35
  57. data/testing/rspec/spec/integration/{example_integration_spec.rb → models/example_integration_spec.rb} +109 -83
  58. data/testing/rspec/spec/integration/{feature_file_integration_spec.rb → models/feature_file_integration_spec.rb} +52 -38
  59. data/testing/rspec/spec/integration/{feature_integration_spec.rb → models/feature_integration_spec.rb} +125 -112
  60. data/testing/rspec/spec/integration/{model_integration_spec.rb → models/model_integration_spec.rb} +1 -1
  61. data/testing/rspec/spec/integration/{outline_integration_spec.rb → models/outline_integration_spec.rb} +138 -129
  62. data/testing/rspec/spec/integration/{row_integration_spec.rb → models/row_integration_spec.rb} +55 -35
  63. data/testing/rspec/spec/integration/{scenario_integration_spec.rb → models/scenario_integration_spec.rb} +92 -88
  64. data/testing/rspec/spec/integration/models/step_integration_spec.rb +573 -0
  65. data/testing/rspec/spec/integration/{table_integration_spec.rb → models/table_integration_spec.rb} +38 -34
  66. data/testing/rspec/spec/integration/{tag_integration_spec.rb → models/tag_integration_spec.rb} +56 -36
  67. data/testing/rspec/spec/integration/parsing_integration_spec.rb +45 -7
  68. data/testing/rspec/spec/spec_helper.rb +79 -43
  69. data/testing/rspec/spec/unit/cuke_modeler_unit_spec.rb +25 -0
  70. data/testing/rspec/spec/unit/{background_unit_spec.rb → models/background_unit_spec.rb} +1 -1
  71. data/testing/rspec/spec/unit/{cell_unit_spec.rb → models/cell_unit_spec.rb} +1 -1
  72. data/testing/rspec/spec/unit/{comment_unit_spec.rb → models/comment_unit_spec.rb} +1 -1
  73. data/testing/rspec/spec/unit/{directory_unit_spec.rb → models/directory_unit_spec.rb} +1 -1
  74. data/testing/rspec/spec/unit/{doc_string_unit_spec.rb → models/doc_string_unit_spec.rb} +1 -1
  75. data/testing/rspec/spec/unit/{example_unit_spec.rb → models/example_unit_spec.rb} +1 -1
  76. data/testing/rspec/spec/unit/{feature_file_unit_spec.rb → models/feature_file_unit_spec.rb} +1 -1
  77. data/testing/rspec/spec/unit/{feature_unit_spec.rb → models/feature_unit_spec.rb} +1 -1
  78. data/testing/rspec/spec/unit/{model_unit_spec.rb → models/model_unit_spec.rb} +1 -1
  79. data/testing/rspec/spec/unit/{outline_unit_spec.rb → models/outline_unit_spec.rb} +1 -1
  80. data/testing/rspec/spec/unit/{row_unit_spec.rb → models/row_unit_spec.rb} +1 -1
  81. data/testing/rspec/spec/unit/{scenario_unit_spec.rb → models/scenario_unit_spec.rb} +1 -1
  82. data/testing/rspec/spec/unit/{step_unit_spec.rb → models/step_unit_spec.rb} +2 -2
  83. data/testing/rspec/spec/unit/{table_unit_spec.rb → models/table_unit_spec.rb} +1 -1
  84. data/testing/rspec/spec/unit/{tag_unit_spec.rb → models/tag_unit_spec.rb} +1 -1
  85. data/testing/rspec/spec/unit/shared/containing_models_unit_specs.rb +102 -0
  86. data/todo.txt +5 -2
  87. metadata +80 -47
  88. data/History.md +0 -186
  89. data/testing/cucumber/support/transforms.rb +0 -3
  90. data/testing/rspec/spec/integration/step_integration_spec.rb +0 -459
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 6f6ce507c3e4cce81b178759608f8421995acb33
4
- data.tar.gz: 28e38d785382112db34e4bd8ad21c2ab2d520fb2
2
+ SHA256:
3
+ metadata.gz: 1e45af46cbcc095433e4bf40fd868daed964bbbc53dac06d3d3de6ca6a4c2db1
4
+ data.tar.gz: 36e8660c3f4e993732113f79979168ac59b1bd33c35e8722fc06abdf4e54ce85
5
5
  SHA512:
6
- metadata.gz: 6468b515b7f55540cf96319c3862ef04d7560b583294a694c71a3077becc915516465dec013e414c24d05b6fe8cfa0ef37844b4eab23dc1f62068b876b0fa17c
7
- data.tar.gz: c636a5d624e5ad31be581134f0429bf63cd2d52bbef6a0278c5484ac8a2d0e18519e0d372051d5de44f4a012959dd7d93801559eda4f693e44247b779dd0c210
6
+ metadata.gz: 39109727b23ffbed1015bc7d690367a10c8f8a88e12d099ba973fcd722cfc5fd0f15e9c5dfeef4a61793850b75a46feb9933f1bba66845cb7ccd72c323d26c36
7
+ data.tar.gz: 11848c5307c7da2a0669e80dfef83cf535ba1259e3c04d05897b12ab5057760419f239ff7eaaebbc37fec33e7610cc11c771f81128d05f7a779794ad70770978
@@ -2,12 +2,17 @@ os:
2
2
  - linux
3
3
  - osx
4
4
 
5
+ # JRuby isn't working on the new default distribution
6
+ dist: trusty
7
+
5
8
  language: ruby
6
9
  rvm:
7
10
  - 1.8.7
8
11
  - 1.9.3
9
- - 2.3.3
10
- - 2.4.0
12
+ - 2.3.8
13
+ - 2.4.5
14
+ - 2.5.3
15
+ - 2.6.0
11
16
  - jruby-9.1.7.0
12
17
 
13
18
  gemfile:
@@ -15,24 +20,62 @@ gemfile:
15
20
  - testing/gemfiles/gherkin3.gemfile
16
21
  - testing/gemfiles/gherkin4.gemfile
17
22
  - testing/gemfiles/gherkin5.gemfile
23
+ - testing/gemfiles/gherkin6.gemfile
24
+ - testing/gemfiles/gherkin7.gemfile
25
+ - testing/gemfiles/gherkin8.gemfile
26
+ - testing/gemfiles/gherkin9.gemfile
18
27
 
19
28
  matrix:
20
29
  exclude:
21
- # gherkin 3.x does not work with Ruby 1.8.x
22
- - rvm: 1.8.7
23
- gemfile: testing/gemfiles/gherkin3.gemfile
24
- # gherkin 4.x does not work with Ruby 1.8.x
25
- - rvm: 1.8.7
26
- gemfile: testing/gemfiles/gherkin4.gemfile
27
- # gherkin 5.x does not work with Ruby 1.8.x
28
- - rvm: 1.8.7
29
- gemfile: testing/gemfiles/gherkin5.gemfile
30
- # Travis does not provide 1.8.7 on OSX
31
- - rvm: 1.8.7
32
- os: osx
33
-
34
- # todo - Remove this once TravisCI fixes their bundler issue (https://github.com/alphagov/govuk_template/pull/186)
30
+
31
+ # gherkin 3.x+ does not work with Ruby 1.8.x
32
+ - rvm: 1.8.7
33
+ gemfile: testing/gemfiles/gherkin3.gemfile
34
+ - rvm: 1.8.7
35
+ gemfile: testing/gemfiles/gherkin4.gemfile
36
+ - rvm: 1.8.7
37
+ gemfile: testing/gemfiles/gherkin5.gemfile
38
+ - rvm: 1.8.7
39
+ gemfile: testing/gemfiles/gherkin6.gemfile
40
+ - rvm: 1.8.7
41
+ gemfile: testing/gemfiles/gherkin7.gemfile
42
+ - rvm: 1.8.7
43
+ gemfile: testing/gemfiles/gherkin8.gemfile
44
+ - rvm: 1.8.7
45
+ gemfile: testing/gemfiles/gherkin9.gemfile
46
+
47
+ # gherkin 6.x+ does not work with Ruby 1.9.x
48
+ - rvm: 1.9.3
49
+ gemfile: testing/gemfiles/gherkin6.gemfile
50
+ - rvm: 1.9.3
51
+ gemfile: testing/gemfiles/gherkin7.gemfile
52
+ - rvm: 1.9.3
53
+ gemfile: testing/gemfiles/gherkin8.gemfile
54
+ - rvm: 1.9.3
55
+ gemfile: testing/gemfiles/gherkin9.gemfile
56
+
57
+ # TODO: turn this back on
58
+ # gherkin 6.x+ relies on 'google-protobuf', which does not currently work on JRuby (https://github.com/protocolbuffers/protobuf/issues/1594)
59
+ - rvm: jruby-9.1.7.0
60
+ gemfile: testing/gemfiles/gherkin6.gemfile
61
+ - rvm: jruby-9.1.7.0
62
+ gemfile: testing/gemfiles/gherkin7.gemfile
63
+ - rvm: jruby-9.1.7.0
64
+ gemfile: testing/gemfiles/gherkin8.gemfile
65
+ - rvm: jruby-9.1.7.0
66
+ gemfile: testing/gemfiles/gherkin9.gemfile
67
+
68
+ # Travis does not provide 1.8.7 on OSX
69
+ - rvm: 1.8.7
70
+ os: osx
71
+ # Travis does not provide 1.9.3 on OSX
72
+ - rvm: 1.9.3
73
+ os: osx
74
+ # Ruby 2.3.x is currently broken on TravisCI for OSX and is no longer a supported Ruby version, anyway.
75
+ - rvm: 2.3.8
76
+ os: osx
77
+
35
78
  before_install:
36
- - gem install bundler -v 1.9.10
79
+ - gem install bundler -v '< 2'
37
80
 
38
81
  script: bundle exec rake cuke_modeler:ci_build
@@ -0,0 +1,312 @@
1
+ # Changelog
2
+ All notable changes to this project will be documented in this file.
3
+
4
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
5
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
+
7
+ ## [Unreleased]
8
+
9
+ Nothing yet...
10
+
11
+ ## [2.1.0] - 2020-05-27
12
+
13
+ ### Added
14
+ - Support added for more versions of the `gherkin` gem
15
+ - 9.x
16
+ - 8.x
17
+ - 7.x
18
+
19
+ ### Fixed
20
+ - Parsing errors are now correctly bubbled up when using Gherkin 6.x
21
+
22
+ ## [2.0.0] - 2020-02-11
23
+
24
+ ### Changed
25
+
26
+ - Step models now include doc strings and tables when determining their equality with other steps. Previously, only the base text of the step was included and the doc string/table was explicitly ignored.
27
+
28
+
29
+ ## [1.5.1] - 2019-04-14
30
+
31
+ ### Added
32
+
33
+ - Add dependency version limits to Ruby which was previously unbound
34
+ - Add dependency version limits to `bundler`, which was previously unbound
35
+ - Added inline documentation to some methods that did not have any
36
+
37
+ ## [1.5.0] - 2019-01-13
38
+
39
+ ### Added
40
+
41
+ - Added methods to easily run elements of an arbitrarily rooted model tree through a given block of code.
42
+
43
+
44
+ ## [1.4.0] - 2018-11-14
45
+
46
+ ### Added
47
+
48
+ - Now compatible with Gherkin 6.x.
49
+
50
+
51
+ ## [1.3.0] - 2017-10-19
52
+
53
+ ### Added
54
+
55
+ - Now compatible with Gherkin 5.x.
56
+
57
+
58
+ ## [1.2.1] - 2017-04-25
59
+
60
+ ### Added
61
+
62
+ - Now officially compatible with Rake 12.x.
63
+
64
+
65
+ ## [1.2.0] - 2016-11-23
66
+
67
+ ### Added
68
+
69
+ - The comments in a feature file are now a modeled element.
70
+
71
+
72
+ ## [1.1.1] - 2016-10-28
73
+
74
+ ### Fixed
75
+
76
+ - Abstract instantiation of models when using a non-default dialect
77
+ now works correctly.
78
+
79
+
80
+ ## [1.1.0] - 2016-10-28
81
+
82
+ ### Added
83
+
84
+ - Support added for non-English dialects. This gem should now be able to model
85
+ feature files using any dialect supported by the 'gherkin' gem.
86
+
87
+ - Models for elements of Gherkin that have keywords (e.g. 'Feature', 'Scenario',
88
+ 'Examples') now keep track of the keyword used by the element that they model.
89
+
90
+ ### Fixed
91
+
92
+ - Fixed a bug that was causing example models to output extra newline
93
+ characters under certain circumstances.
94
+
95
+
96
+ ## [1.0.4] - 2016-10-07
97
+
98
+ ### Fixed
99
+
100
+ - Fixed a bug that caused some models to include nil objects in their
101
+ children collection if they did not have the relevant child object.
102
+
103
+
104
+ ## [1.0.3] - 2016-09-12
105
+
106
+ ### Fixed
107
+
108
+ - Fixed a gem dependency that was accidentally declared with '<=' instead of '<'.
109
+
110
+
111
+ ## [1.0.2] - 2016-09-12
112
+
113
+ ### Added
114
+
115
+ - A more detailed gem description and summary have been added to the gemspec.
116
+
117
+ - The gem now declares version limits on its dependencies.
118
+
119
+ - Badges for the current status of the project have been added to the Readme.
120
+
121
+
122
+ ## [1.0.1] - 2016-09-10
123
+
124
+ ### Added
125
+
126
+ - In the Readme file, added a link to the published documentation.
127
+
128
+
129
+ ## [1.0.0] - 2016-09-08
130
+
131
+ ### Added
132
+
133
+ - Background models can now be compared to other models that have steps (i.e.
134
+ scenarios and outlines).
135
+
136
+ - Added specific ancestor types for scenario, outline, and background models as
137
+ alternatives to the generic 'test' ancestor type.
138
+
139
+
140
+ ### Changed
141
+
142
+ - A base model class has been added in order to simplify adding new element
143
+ models. Other classes and modules used for organizing common model behavior
144
+ have been created/removed/renamed.
145
+
146
+ - All modeled elements of a Cucumber test suite are now modeled with actual
147
+ classes. Previously, some elements (such as tags or rows in an example table)
148
+ were modeled with simple strings.
149
+
150
+ - Feature file models now only have a single feature model instead of a
151
+ collection of them (that would only ever have one item in it).
152
+
153
+ - Rows in an example table and rows in a step table no longer use two different
154
+ classes for modeling.
155
+
156
+ - All models for Gherkin elements now track the line number from which they
157
+ originate in a source file.
158
+
159
+ - The source line of a model is now a mutable attribute instead of being read
160
+ only.
161
+
162
+ - The file path of a feature file is now a mutable attribute instead of being
163
+ read only.
164
+
165
+ - Standardized the initial values of the attributes of abstractly created
166
+ models so that they are consistent across model types.
167
+
168
+ - Extra whitespace around parsed element descriptions is now trimmed away
169
+ before being stored in a model.
170
+
171
+ - Adding rows to examples via hashes can now be done without regard to the
172
+ order of the keys in the hash. The correct order can be determined by the
173
+ model.
174
+
175
+ - The saved parsing data that is generated by the 'gherkin' gem is no longer
176
+ duplicated for each model, resulting in significantly less memory usage.
177
+
178
+ - Various methods have been renamed.
179
+
180
+
181
+ ### Removed
182
+
183
+ - Removed the backdoor used to pass around model data during the model creation
184
+ process. Model input can now only be text.
185
+
186
+ - Simple counting methods have been removed. Ruby's collection methods are just
187
+ as easy to use directly when dealing with classes that contain collections
188
+ and the removal of these counting methods simplifies the codebase.
189
+
190
+ - The 'World' module has been removed. The scope of this gem is to model files
191
+ written in Gherkin. Concepts like 'step definitions' and 'hooks' are better
192
+ left to libraries that include (possibly programming language specific) test
193
+ execution logic within their scope of concern.
194
+
195
+ - Step models no longer have 'arguments' because they require the concept of
196
+ step definitions, which are no longer within the scope of this gem.
197
+
198
+ - Removed deprecated behavior
199
+ - Marked
200
+ - Doc strings no longer use an array of strings to model their content
201
+ - Tables no longer use nested arrays of strings to model their rows
202
+ - Models that have descriptions no longer use an array of strings to
203
+ model their description
204
+ - The convenient (read: awkward) #step_text has been removed.
205
+ - Unmarked
206
+ - Examples no longer use an array of hashes to model their rows
207
+
208
+
209
+ ### Fixed
210
+
211
+ - String output of models has been improved. More special characters in Gherkin
212
+ (e.g. vertical bars in rows) are appropriately escaped in the string output
213
+ of a model and several minor bugs related to using model string output as the
214
+ input text for new models have been fixed.
215
+
216
+
217
+ ## [0.4.1] - 2016-05-12
218
+
219
+ ### Added
220
+
221
+ - Increased the flexibility of input when adding rows to an Example object. Non-
222
+ string values can now be used as input and they will be converted into
223
+ strings. Original input objects are not modified.
224
+
225
+ - Added some error checking around adding value rows to an Example object
226
+ without adding a parameter row as well.
227
+
228
+
229
+ ## [0.4.0] - 2016-05-01
230
+
231
+ ### Added
232
+
233
+ - The path of a Directory object is now a changeable attribute instead of only
234
+ being populated if the instance was given a diretory to model.
235
+
236
+ ### Fixed
237
+
238
+ - Fixed a bug that occurred if a Directory object was asked for its
239
+ `#name` when it was created as 'abstract' instead of modeling an existing
240
+ directory.
241
+
242
+
243
+ ## [0.3.0] - 2016-04-24
244
+
245
+ ### Added
246
+
247
+ - Support for version 4.x of the 'gherkin' gem added.
248
+
249
+ ### Fixed
250
+
251
+ - Fixed a bug that was preventing Example objects from being created
252
+ from text if that text had less Gherkin structure than normal.
253
+
254
+
255
+ ## [0.2.0] - 2016-02-21
256
+
257
+ ### Added
258
+
259
+ - Better error feedback when parsing errors are encountered. It is now easier
260
+ to tell which file contained invalid Gherkin.
261
+
262
+
263
+ ## [0.1.0] - 2016-02-10
264
+
265
+ ### Added
266
+
267
+ - Support for version 3.x of the 'gherkin' gem added.
268
+
269
+ ### Fixed
270
+
271
+ - The saved parsing data that is generated by the 'gherkin' gem is no
272
+ longer modified by the rest of the model creation process.
273
+
274
+
275
+ ## [0.0.2] - 2015-11-22
276
+
277
+ ### Fixed
278
+
279
+ - Fixed a bug that was causing object comparison using #== to not
280
+ work when comparing some models to other types of objects.
281
+
282
+
283
+ ## [0.0.1] - 2014-06-02
284
+
285
+ ### Added
286
+
287
+ - Initial release
288
+
289
+
290
+ [Unreleased]: https://github.com/enkessler/cuke_modeler/compare/v2.1.0...HEAD
291
+ [2.1.0]: https://github.com/enkessler/cuke_modeler/compare/v2.0.0...v2.1.0
292
+ [2.0.0]: https://github.com/enkessler/cuke_modeler/compare/v1.5.1...v2.0.0
293
+ [1.5.1]: https://github.com/enkessler/cuke_modeler/compare/v1.5.0...v1.5.1
294
+ [1.5.0]: https://github.com/enkessler/cuke_modeler/compare/v1.4.0...v1.5.0
295
+ [1.4.0]: https://github.com/enkessler/cuke_modeler/compare/v1.3.0...v1.4.0
296
+ [1.3.0]: https://github.com/enkessler/cuke_modeler/compare/v1.2.1...v1.3.0
297
+ [1.2.1]: https://github.com/enkessler/cuke_modeler/compare/v1.2.0...v1.2.1
298
+ [1.2.0]: https://github.com/enkessler/cuke_modeler/compare/v1.1.1...v1.2.0
299
+ [1.1.1]: https://github.com/enkessler/cuke_modeler/compare/v1.1.0...v1.1.1
300
+ [1.1.0]: https://github.com/enkessler/cuke_modeler/compare/v1.0.4...v1.1.0
301
+ [1.0.4]: https://github.com/enkessler/cuke_modeler/compare/v1.0.3...v1.0.4
302
+ [1.0.3]: https://github.com/enkessler/cuke_modeler/compare/v1.0.2...v1.0.3
303
+ [1.0.2]: https://github.com/enkessler/cuke_modeler/compare/v1.0.1...v1.0.2
304
+ [1.0.1]: https://github.com/enkessler/cuke_modeler/compare/v1.0.0...v1.0.1
305
+ [1.0.0]: https://github.com/enkessler/cuke_modeler/compare/v0.4.1...v1.0.0
306
+ [0.4.1]: https://github.com/enkessler/cuke_modeler/compare/v0.4.0...v0.4.1
307
+ [0.4.0]: https://github.com/enkessler/cuke_modeler/compare/v0.3.0...v0.4.0
308
+ [0.3.0]: https://github.com/enkessler/cuke_modeler/compare/v0.2.0...v0.3.0
309
+ [0.2.0]: https://github.com/enkessler/cuke_modeler/compare/v0.1.0...v0.2.0
310
+ [0.1.0]: https://github.com/enkessler/cuke_modeler/compare/v0.0.2...v0.1.0
311
+ [0.0.2]: https://github.com/enkessler/cuke_modeler/compare/v0.0.1...v0.0.2
312
+ [0.0.1]: https://github.com/enkessler/cuke_modeler/compare/ce627fb591966c9ef19a9e69338b1282e9902a0d...v0.0.1
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
- source 'https://rubygems.org'
1
+ source 'http://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in cuke_modeler.gemspec
4
4
  gemspec
@@ -7,6 +7,11 @@ gemspec
7
7
 
8
8
  if RUBY_VERSION =~ /^1\./
9
9
 
10
+ if RbConfig::CONFIG['host_os'].downcase =~ /mswin|msys|mingw32/
11
+ gem 'ffi', '< 1.9.15' # The 'ffi' gem, for Windows, requires Ruby 2.x on/after this version
12
+ end
13
+
14
+ gem 'unf_ext', '< 0.0.7.3' # Requires Ruby 2.x on/after this version
10
15
  gem 'tins', '< 1.7' # The 'tins' gem requires Ruby 2.x on/after this version
11
16
  gem 'json', '< 2.0' # The 'json' gem drops pre-Ruby 2.x support on/after this version
12
17
  gem 'term-ansicolor', '< 1.4' # The 'term-ansicolor' gem requires Ruby 2.x on/after this version
@@ -14,15 +19,26 @@ if RUBY_VERSION =~ /^1\./
14
19
  if RUBY_VERSION =~ /^1\.8/
15
20
  gem 'cucumber', '~> 1.0' # Ruby 1.8.x support dropped after this version
16
21
  gem 'gherkin', '< 2.12.1' # Ruby 1.8.x support dropped after this version
22
+ gem 'rainbow', '< 2.0' # Ruby 1.8.x support dropped after this version
17
23
  gem 'rake', '< 11.0' # Ruby 1.8.x support dropped after this version
24
+ gem 'mime-types', '< 2.0' # Ruby 1.8.x support dropped after this version
25
+ else
26
+ gem 'rake', '< 12.3.0' # Ruby 1.9.x support dropped after this version
27
+ gem 'cucumber', '< 3.0.0' # Ruby 1.9.x support dropped after this version
28
+ gem 'rainbow', '< 3.0' # Ruby 1.9.x support dropped after this version
29
+ gem 'mime-types', '< 3.0' # Ruby 1.x support dropped after this version
18
30
  end
19
31
 
32
+ gem 'simplecov', '< 0.18' # Ruby 1.x support dropped after this version
33
+ gem 'thor', '< 1.0' # Ruby 1.x support dropped after this version
20
34
  elsif RUBY_VERSION =~ /^2\./
21
35
 
22
36
  if RUBY_VERSION =~ /^2\.[23456789]/
23
37
  gem 'test-unit'
24
38
  end
25
39
 
26
- gem 'gherkin', '~> 5.0'
27
-
28
40
  end
41
+
42
+ # Note: When testing against 6.x, the latest version (6.0.17) is missing an executable for Windows 64-bit
43
+ # gem 'gherkin', '>= 6.0', '< 6.0.17'
44
+ gem 'gherkin', '~> 9.0'