cucumber-cucumber-expressions 17.0.1 → 17.0.2

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 (26) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +13 -3
  3. data/.rubocop_todo.yml +60 -141
  4. data/VERSION +1 -1
  5. data/cucumber-cucumber-expressions.gemspec +9 -4
  6. data/lib/cucumber/cucumber_expressions/combinatorial_generated_expression_factory.rb +1 -1
  7. data/lib/cucumber/cucumber_expressions/cucumber_expression.rb +8 -8
  8. data/lib/cucumber/cucumber_expressions/cucumber_expression_parser.rb +1 -1
  9. data/lib/cucumber/cucumber_expressions/errors.rb +11 -11
  10. data/lib/cucumber/cucumber_expressions/parameter_type.rb +1 -3
  11. data/lib/cucumber/cucumber_expressions/parameter_type_matcher.rb +2 -2
  12. data/spec/cucumber/cucumber_expressions/argument_spec.rb +1 -1
  13. data/spec/cucumber/cucumber_expressions/combinatorial_generated_expression_factory_spec.rb +41 -0
  14. data/spec/cucumber/cucumber_expressions/cucumber_expression_generator_spec.rb +10 -10
  15. data/spec/cucumber/cucumber_expressions/cucumber_expression_parser_spec.rb +1 -1
  16. data/spec/cucumber/cucumber_expressions/cucumber_expression_spec.rb +8 -8
  17. data/spec/cucumber/cucumber_expressions/cucumber_expression_tokenizer_spec.rb +2 -2
  18. data/spec/cucumber/cucumber_expressions/cucumber_expression_transformation_spec.rb +2 -2
  19. data/spec/cucumber/cucumber_expressions/custom_parameter_type_spec.rb +7 -7
  20. data/spec/cucumber/cucumber_expressions/expression_factory_spec.rb +1 -1
  21. data/spec/cucumber/cucumber_expressions/parameter_type_registry_spec.rb +11 -11
  22. data/spec/cucumber/cucumber_expressions/parameter_type_spec.rb +1 -1
  23. data/spec/cucumber/cucumber_expressions/regular_expression_spec.rb +2 -2
  24. data/spec/cucumber/cucumber_expressions/tree_regexp_spec.rb +26 -27
  25. metadata +62 -6
  26. data/spec/cucumber/cucumber_expressions/combinatorial_generated_expression_factory_test.rb +0 -44
@@ -1,44 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'cucumber/cucumber_expressions/parameter_type'
4
- require 'cucumber/cucumber_expressions/combinatorial_generated_expression_factory'
5
-
6
- module Cucumber
7
- module CucumberExpressions
8
- class Color; end
9
- class CssColor; end
10
- class Date; end
11
- class DateTime; end
12
- class Timestamp; end
13
-
14
- describe CombinatorialGeneratedExpressionFactory do
15
- it 'generates multiple expressions' do
16
- parameter_type_combinations = [
17
- [
18
- ParameterType.new('color', /red|blue|yellow/, Color, ->(s) { Color.new }, true, false),
19
- ParameterType.new('csscolor', /red|blue|yellow/, CssColor, ->(s) { CssColor.new }, true, false)
20
- ],
21
- [
22
- ParameterType.new('date', /\d{4}-\d{2}-\d{2}/, Date, ->(s) { Date.new }, true, false),
23
- ParameterType.new('datetime', /\d{4}-\d{2}-\d{2}/, DateTime, ->(s) { DateTime.new }, true, false),
24
- ParameterType.new('timestamp', /\d{4}-\d{2}-\d{2}/, Timestamp, ->(s) { Timestamp.new }, true, false)
25
- ]
26
- ]
27
-
28
- factory = CombinatorialGeneratedExpressionFactory.new(
29
- 'I bought a {%s} ball on {%s}',
30
- parameter_type_combinations
31
- )
32
- expressions = factory.generate_expressions.map { |ge| ge.source }
33
- expect(expressions).to eq([
34
- 'I bought a {color} ball on {date}',
35
- 'I bought a {color} ball on {datetime}',
36
- 'I bought a {color} ball on {timestamp}',
37
- 'I bought a {csscolor} ball on {date}',
38
- 'I bought a {csscolor} ball on {datetime}',
39
- 'I bought a {csscolor} ball on {timestamp}',
40
- ])
41
- end
42
- end
43
- end
44
- end