cuke_modeler 0.4.1 → 1.0.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.
- checksums.yaml +4 -4
- data/.gitignore +17 -17
- data/.travis.yml +1 -1
- data/Gemfile +4 -0
- data/History.rdoc +71 -3
- data/LICENSE.txt +22 -22
- data/README.md +24 -10
- data/Rakefile +2 -12
- data/cuke_modeler.gemspec +1 -1
- data/features/analysis/test_comparison.feature +37 -122
- data/features/modeling/background_modeling.feature +77 -0
- data/features/modeling/background_output.feature +42 -0
- data/features/modeling/cell_modeling.feature +23 -0
- data/features/modeling/cell_output.feature +22 -0
- data/features/modeling/directory_modeling.feature +65 -0
- data/features/modeling/directory_output.feature +12 -0
- data/features/modeling/doc_string_modeling.feature +61 -0
- data/features/modeling/doc_string_output.feature +32 -0
- data/features/modeling/example_modeling.feature +125 -0
- data/features/modeling/example_output.feature +39 -0
- data/features/modeling/feature_file_modeling.feature +40 -0
- data/features/modeling/feature_file_output.feature +12 -0
- data/features/modeling/feature_modeling.feature +109 -0
- data/features/modeling/feature_output.feature +104 -0
- data/features/modeling/model_output.feature +22 -0
- data/features/modeling/model_structure.feature +48 -0
- data/features/modeling/outline_modeling.feature +144 -0
- data/features/modeling/outline_output.feature +69 -0
- data/features/modeling/row_modeling.feature +48 -0
- data/features/modeling/row_output.feature +22 -0
- data/features/modeling/scenario_modeling.feature +118 -0
- data/features/modeling/scenario_output.feature +45 -0
- data/features/modeling/step_modeling.feature +84 -0
- data/features/modeling/step_output.feature +29 -0
- data/features/modeling/table_modeling.feature +50 -0
- data/features/modeling/table_output.feature +24 -0
- data/features/modeling/tag_modeling.feature +43 -0
- data/features/modeling/tag_output.feature +22 -0
- data/features/step_definitions/action_steps.rb +11 -1
- data/features/step_definitions/background_steps.rb +1 -85
- data/features/step_definitions/directory_steps.rb +2 -48
- data/features/step_definitions/doc_string_steps.rb +1 -67
- data/features/step_definitions/feature_file_steps.rb +2 -37
- data/features/step_definitions/feature_steps.rb +4 -100
- data/features/step_definitions/modeling_steps.rb +44 -0
- data/features/step_definitions/setup_steps.rb +19 -41
- data/features/step_definitions/step_steps.rb +2 -166
- data/features/step_definitions/table_steps.rb +1 -58
- data/features/step_definitions/tag_steps.rb +2 -72
- data/features/step_definitions/verification_steps.rb +152 -4
- data/features/support/env.rb +4 -6
- data/gemfiles/{gherkin.gemfile → gherkin2.gemfile} +4 -0
- data/gemfiles/gherkin3.gemfile +4 -0
- data/gemfiles/gherkin4.gemfile +4 -0
- data/lib/cuke_modeler.rb +24 -22
- data/lib/cuke_modeler/adapters/gherkin_2_adapter.rb +103 -31
- data/lib/cuke_modeler/adapters/gherkin_3_adapter.rb +103 -40
- data/lib/cuke_modeler/adapters/gherkin_4_adapter.rb +111 -50
- data/lib/cuke_modeler/containing.rb +255 -4
- data/lib/cuke_modeler/described.rb +28 -0
- data/lib/cuke_modeler/models/background.rb +66 -0
- data/lib/cuke_modeler/models/cell.rb +48 -0
- data/lib/cuke_modeler/models/directory.rb +95 -0
- data/lib/cuke_modeler/models/doc_string.rb +59 -0
- data/lib/cuke_modeler/models/example.rb +167 -0
- data/lib/cuke_modeler/models/feature.rb +106 -0
- data/lib/cuke_modeler/models/feature_file.rb +64 -0
- data/lib/cuke_modeler/models/model.rb +32 -0
- data/lib/cuke_modeler/models/outline.rb +79 -0
- data/lib/cuke_modeler/models/row.rb +49 -0
- data/lib/cuke_modeler/models/scenario.rb +69 -0
- data/lib/cuke_modeler/models/step.rb +68 -0
- data/lib/cuke_modeler/models/table.rb +67 -0
- data/lib/cuke_modeler/models/tag.rb +46 -0
- data/lib/cuke_modeler/named.rb +19 -0
- data/lib/cuke_modeler/nested.rb +22 -15
- data/lib/cuke_modeler/parsed.rb +11 -0
- data/lib/cuke_modeler/parsing.rb +66 -83
- data/lib/cuke_modeler/sourceable.rb +3 -11
- data/lib/cuke_modeler/stepped.rb +24 -0
- data/lib/cuke_modeler/taggable.rb +6 -29
- data/lib/cuke_modeler/version.rb +2 -1
- data/spec/integration/background_integration_spec.rb +332 -7
- data/spec/integration/cell_integration_spec.rb +321 -0
- data/spec/integration/directory_integration_spec.rb +175 -9
- data/spec/integration/doc_string_integration_spec.rb +318 -7
- data/spec/integration/example_integration_spec.rb +602 -19
- data/spec/integration/feature_file_integration_spec.rb +98 -3
- data/spec/integration/feature_integration_spec.rb +445 -27
- data/spec/integration/gherkin_2_adapter_spec.rb +122 -0
- data/spec/integration/gherkin_3_adapter_spec.rb +125 -0
- data/spec/integration/gherkin_4_adapter_spec.rb +123 -0
- data/spec/integration/model_integration_spec.rb +15 -0
- data/spec/integration/nested_integration_spec.rb +91 -0
- data/spec/integration/outline_integration_spec.rb +485 -12
- data/spec/integration/parsing_integration_spec.rb +85 -0
- data/spec/integration/row_integration_spec.rb +221 -18
- data/spec/integration/scenario_integration_spec.rb +368 -14
- data/spec/integration/shared/models_integration_specs.rb +18 -0
- data/spec/integration/step_integration_spec.rb +328 -77
- data/spec/integration/table_integration_spec.rb +242 -20
- data/spec/integration/tag_integration_spec.rb +178 -13
- data/spec/spec_helper.rb +32 -18
- data/spec/unit/background_unit_spec.rb +24 -44
- data/spec/unit/cell_unit_spec.rb +73 -0
- data/spec/unit/described_unit_spec.rb +23 -0
- data/spec/unit/directory_unit_spec.rb +52 -62
- data/spec/unit/doc_string_unit_spec.rb +47 -100
- data/spec/unit/example_unit_spec.rb +50 -296
- data/spec/unit/feature_file_unit_spec.rb +53 -52
- data/spec/unit/feature_unit_spec.rb +39 -83
- data/spec/unit/model_unit_spec.rb +15 -0
- data/spec/unit/named_unit_spec.rb +23 -0
- data/spec/unit/nested_unit_spec.rb +24 -21
- data/spec/unit/outline_unit_spec.rb +46 -69
- data/spec/unit/parsed_unit_spec.rb +27 -0
- data/spec/unit/parsing_unit_spec.rb +2 -70
- data/spec/unit/row_unit_spec.rb +22 -51
- data/spec/unit/scenario_unit_spec.rb +27 -59
- data/spec/unit/{bare_bones_unit_specs.rb → shared/bare_bones_models_unit_specs.rb} +2 -2
- data/spec/unit/shared/containing_models_unit_specs.rb +18 -0
- data/spec/unit/shared/described_models_unit_specs.rb +38 -0
- data/spec/unit/shared/models_unit_specs.rb +15 -0
- data/spec/unit/shared/named_models_unit_specs.rb +39 -0
- data/spec/unit/shared/nested_models_unit_specs.rb +51 -0
- data/spec/unit/shared/parsed_models_unit_specs.rb +39 -0
- data/spec/unit/shared/prepopulated_models_unit_specs.rb +18 -0
- data/spec/unit/shared/sourced_models_unit_specs.rb +39 -0
- data/spec/unit/shared/stepped_models_unit_specs.rb +46 -0
- data/spec/unit/shared/stringifiable_models_unit_specs.rb +18 -0
- data/spec/unit/shared/tagged_models_unit_specs.rb +72 -0
- data/spec/unit/sourceable_unit_spec.rb +12 -4
- data/spec/unit/step_unit_spec.rb +40 -231
- data/spec/unit/stepped_unit_spec.rb +23 -0
- data/spec/unit/table_unit_spec.rb +27 -89
- data/spec/unit/tag_unit_spec.rb +30 -53
- data/spec/unit/taggable_unit_spec.rb +26 -42
- data/todo.txt +32 -0
- metadata +135 -217
- data/features/analysis/test_manipulation.feature +0 -37
- data/features/modeling/gherkin/background_modeling.feature +0 -65
- data/features/modeling/gherkin/background_output.feature +0 -131
- data/features/modeling/gherkin/directory_modeling.feature +0 -110
- data/features/modeling/gherkin/directory_output.feature +0 -14
- data/features/modeling/gherkin/doc_string_modeling.feature +0 -53
- data/features/modeling/gherkin/doc_string_output.feature +0 -72
- data/features/modeling/gherkin/example_modeling.feature +0 -101
- data/features/modeling/gherkin/example_output.feature +0 -193
- data/features/modeling/gherkin/feature_file_modeling.feature +0 -54
- data/features/modeling/gherkin/feature_file_output.feature +0 -14
- data/features/modeling/gherkin/feature_modeling.feature +0 -154
- data/features/modeling/gherkin/feature_output.feature +0 -245
- data/features/modeling/gherkin/outline_modeling.feature +0 -90
- data/features/modeling/gherkin/outline_output.feature +0 -198
- data/features/modeling/gherkin/row_modeling.feature +0 -68
- data/features/modeling/gherkin/row_output.feature +0 -28
- data/features/modeling/gherkin/scenario_modeling.feature +0 -79
- data/features/modeling/gherkin/scenario_output.feature +0 -148
- data/features/modeling/gherkin/step_modeling.feature +0 -75
- data/features/modeling/gherkin/step_output.feature +0 -53
- data/features/modeling/gherkin/table_modeling.feature +0 -42
- data/features/modeling/gherkin/table_output.feature +0 -43
- data/features/modeling/gherkin/table_row_modeling.feature +0 -57
- data/features/modeling/gherkin/table_row_output.feature +0 -28
- data/features/modeling/gherkin/tag_modeling.feature +0 -48
- data/features/modeling/gherkin/tag_output.feature +0 -17
- data/features/modeling/gherkin3/background_modeling.feature +0 -64
- data/features/modeling/gherkin3/background_output.feature +0 -131
- data/features/modeling/gherkin3/directory_modeling.feature +0 -110
- data/features/modeling/gherkin3/directory_output.feature +0 -14
- data/features/modeling/gherkin3/doc_string_modeling.feature +0 -53
- data/features/modeling/gherkin3/doc_string_output.feature +0 -72
- data/features/modeling/gherkin3/example_modeling.feature +0 -100
- data/features/modeling/gherkin3/example_output.feature +0 -207
- data/features/modeling/gherkin3/feature_file_modeling.feature +0 -54
- data/features/modeling/gherkin3/feature_file_output.feature +0 -14
- data/features/modeling/gherkin3/feature_modeling.feature +0 -155
- data/features/modeling/gherkin3/feature_output.feature +0 -249
- data/features/modeling/gherkin3/outline_modeling.feature +0 -89
- data/features/modeling/gherkin3/outline_output.feature +0 -255
- data/features/modeling/gherkin3/row_modeling.feature +0 -68
- data/features/modeling/gherkin3/row_output.feature +0 -28
- data/features/modeling/gherkin3/scenario_modeling.feature +0 -78
- data/features/modeling/gherkin3/scenario_output.feature +0 -148
- data/features/modeling/gherkin3/step_modeling.feature +0 -75
- data/features/modeling/gherkin3/step_output.feature +0 -53
- data/features/modeling/gherkin3/table_modeling.feature +0 -42
- data/features/modeling/gherkin3/table_output.feature +0 -43
- data/features/modeling/gherkin3/table_row_modeling.feature +0 -57
- data/features/modeling/gherkin3/table_row_output.feature +0 -28
- data/features/modeling/gherkin3/tag_modeling.feature +0 -49
- data/features/modeling/gherkin3/tag_output.feature +0 -17
- data/features/modeling/gherkin4/background_modeling.feature +0 -64
- data/features/modeling/gherkin4/background_output.feature +0 -131
- data/features/modeling/gherkin4/directory_modeling.feature +0 -110
- data/features/modeling/gherkin4/directory_output.feature +0 -14
- data/features/modeling/gherkin4/doc_string_modeling.feature +0 -53
- data/features/modeling/gherkin4/doc_string_output.feature +0 -72
- data/features/modeling/gherkin4/example_modeling.feature +0 -100
- data/features/modeling/gherkin4/example_output.feature +0 -193
- data/features/modeling/gherkin4/feature_file_modeling.feature +0 -54
- data/features/modeling/gherkin4/feature_file_output.feature +0 -14
- data/features/modeling/gherkin4/feature_modeling.feature +0 -153
- data/features/modeling/gherkin4/feature_output.feature +0 -245
- data/features/modeling/gherkin4/outline_modeling.feature +0 -89
- data/features/modeling/gherkin4/outline_output.feature +0 -198
- data/features/modeling/gherkin4/row_modeling.feature +0 -68
- data/features/modeling/gherkin4/row_output.feature +0 -28
- data/features/modeling/gherkin4/scenario_modeling.feature +0 -78
- data/features/modeling/gherkin4/scenario_output.feature +0 -148
- data/features/modeling/gherkin4/step_modeling.feature +0 -75
- data/features/modeling/gherkin4/step_output.feature +0 -53
- data/features/modeling/gherkin4/table_modeling.feature +0 -42
- data/features/modeling/gherkin4/table_output.feature +0 -43
- data/features/modeling/gherkin4/table_row_modeling.feature +0 -57
- data/features/modeling/gherkin4/table_row_output.feature +0 -28
- data/features/modeling/gherkin4/tag_modeling.feature +0 -48
- data/features/modeling/gherkin4/tag_output.feature +0 -17
- data/features/step_definitions/outline_steps.rb +0 -258
- data/features/step_definitions/test_steps.rb +0 -123
- data/lib/cuke_modeler/background.rb +0 -38
- data/lib/cuke_modeler/directory.rb +0 -83
- data/lib/cuke_modeler/doc_string.rb +0 -87
- data/lib/cuke_modeler/example.rb +0 -195
- data/lib/cuke_modeler/feature.rb +0 -147
- data/lib/cuke_modeler/feature_element.rb +0 -73
- data/lib/cuke_modeler/feature_file.rb +0 -77
- data/lib/cuke_modeler/outline.rb +0 -68
- data/lib/cuke_modeler/raw.rb +0 -20
- data/lib/cuke_modeler/row.rb +0 -64
- data/lib/cuke_modeler/scenario.rb +0 -45
- data/lib/cuke_modeler/step.rb +0 -216
- data/lib/cuke_modeler/table.rb +0 -90
- data/lib/cuke_modeler/table_row.rb +0 -64
- data/lib/cuke_modeler/tag.rb +0 -62
- data/lib/cuke_modeler/test_element.rb +0 -79
- data/lib/cuke_modeler/world.rb +0 -113
- data/spec/integration/table_row_integration_spec.rb +0 -76
- data/spec/integration/world_integration_spec.rb +0 -14
- data/spec/unit/containing_element_unit_specs.rb +0 -18
- data/spec/unit/feature_element_unit_spec.rb +0 -19
- data/spec/unit/feature_element_unit_specs.rb +0 -52
- data/spec/unit/nested_element_unit_specs.rb +0 -39
- data/spec/unit/prepopulated_unit_specs.rb +0 -14
- data/spec/unit/raw_element_unit_specs.rb +0 -27
- data/spec/unit/raw_unit_spec.rb +0 -28
- data/spec/unit/sourced_element_unit_specs.rb +0 -18
- data/spec/unit/table_row_unit_spec.rb +0 -102
- data/spec/unit/tagged_element_unit_specs.rb +0 -67
- data/spec/unit/test_element_unit_spec.rb +0 -54
- data/spec/unit/test_element_unit_specs.rb +0 -34
- data/spec/unit/world_unit_spec.rb +0 -140
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
@gherkin3
|
|
2
|
-
Feature: Outputting directory elements
|
|
3
|
-
|
|
4
|
-
The output of an element model is a representation of the element as it would
|
|
5
|
-
appear in gherkin.
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
Scenario: Output of a directory
|
|
9
|
-
Given a directory element based on "some_directory"
|
|
10
|
-
When it is outputted
|
|
11
|
-
Then the following text is provided:
|
|
12
|
-
"""
|
|
13
|
-
path_to/some_directory
|
|
14
|
-
"""
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
@gherkin3
|
|
2
|
-
Feature: Doc string elements can be modeled.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
Acceptance criteria
|
|
6
|
-
|
|
7
|
-
1. All conceptual pieces of a doc string can be modeled:
|
|
8
|
-
- the doc string's content type
|
|
9
|
-
- the doc string's contents
|
|
10
|
-
- the doc string's raw element
|
|
11
|
-
|
|
12
|
-
2. Doc string can be outputted in a convenient form
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
Background: Test file setup.
|
|
16
|
-
Given the following feature file:
|
|
17
|
-
"""
|
|
18
|
-
Feature:
|
|
19
|
-
|
|
20
|
-
Scenario:
|
|
21
|
-
* some wordy step:
|
|
22
|
-
\"\"\" content type
|
|
23
|
-
some text
|
|
24
|
-
|
|
25
|
-
some more text
|
|
26
|
-
|
|
27
|
-
\"\"\"
|
|
28
|
-
* some wordy step:
|
|
29
|
-
\"\"\"
|
|
30
|
-
\"\"\"
|
|
31
|
-
"""
|
|
32
|
-
When the file is read
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
Scenario: The raw doc string element is modeled.
|
|
36
|
-
Then the doc string correctly stores its underlying implementation
|
|
37
|
-
|
|
38
|
-
Scenario: The doc string's content type is modeled.
|
|
39
|
-
Then the step "1" doc string content type is "content type"
|
|
40
|
-
And the step "2" doc string has no content type
|
|
41
|
-
|
|
42
|
-
Scenario: The doc string's contents are modeled.
|
|
43
|
-
Then the step "1" doc string has the following contents:
|
|
44
|
-
"""
|
|
45
|
-
some text
|
|
46
|
-
|
|
47
|
-
some more text
|
|
48
|
-
|
|
49
|
-
"""
|
|
50
|
-
And the step "2" doc string contents are empty
|
|
51
|
-
|
|
52
|
-
Scenario: Convenient output of an a doc string
|
|
53
|
-
Then the doc string has convenient output
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
@gherkin3
|
|
2
|
-
Feature: Outputting doc string elements
|
|
3
|
-
|
|
4
|
-
The output of an element model is a representation of the element as it would
|
|
5
|
-
appear in gherkin.
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
Scenario: Output of an empty doc string
|
|
9
|
-
Given a doc string element based on the following gherkin:
|
|
10
|
-
"""
|
|
11
|
-
\"\"\"
|
|
12
|
-
\"\"\"
|
|
13
|
-
"""
|
|
14
|
-
When it is outputted
|
|
15
|
-
Then the following text is provided:
|
|
16
|
-
"""
|
|
17
|
-
\"\"\"
|
|
18
|
-
\"\"\"
|
|
19
|
-
"""
|
|
20
|
-
|
|
21
|
-
Scenario: Output of a doc string without a content type
|
|
22
|
-
Given a doc string element based on the following gherkin:
|
|
23
|
-
"""
|
|
24
|
-
\"\"\"
|
|
25
|
-
Some text
|
|
26
|
-
|
|
27
|
-
some more text
|
|
28
|
-
|
|
29
|
-
\"\"\"
|
|
30
|
-
"""
|
|
31
|
-
When it is outputted
|
|
32
|
-
Then the following text is provided:
|
|
33
|
-
"""
|
|
34
|
-
\"\"\"
|
|
35
|
-
Some text
|
|
36
|
-
|
|
37
|
-
some more text
|
|
38
|
-
|
|
39
|
-
\"\"\"
|
|
40
|
-
"""
|
|
41
|
-
|
|
42
|
-
Scenario: Output of a doc string with a content type
|
|
43
|
-
Given a doc string element based on the following gherkin:
|
|
44
|
-
"""
|
|
45
|
-
\"\"\" the type
|
|
46
|
-
Some text
|
|
47
|
-
|
|
48
|
-
some more text
|
|
49
|
-
|
|
50
|
-
\"\"\"
|
|
51
|
-
"""
|
|
52
|
-
When it is outputted
|
|
53
|
-
Then the following text is provided:
|
|
54
|
-
"""
|
|
55
|
-
\"\"\" the type
|
|
56
|
-
Some text
|
|
57
|
-
|
|
58
|
-
some more text
|
|
59
|
-
|
|
60
|
-
\"\"\"
|
|
61
|
-
"""
|
|
62
|
-
|
|
63
|
-
Scenario: Output of a doc string with a triple quotes in its contents
|
|
64
|
-
|
|
65
|
-
Since triple quotes mark the beginning and end of a doc string, any triple
|
|
66
|
-
quotes inside of the doc string (which would have had to have been escaped
|
|
67
|
-
to get inside in the first place) will be escaped when outputted so as to
|
|
68
|
-
retain the quality of being able to use the output directly as gherkin.
|
|
69
|
-
|
|
70
|
-
Given a doc string element based on the string """" the type\n* a step\n \"\"\"\n that also has a doc string\n \"\"\"\n""""
|
|
71
|
-
When it is outputted
|
|
72
|
-
Then the text provided is """" the type\n* a step\n \"\"\"\n that also has a doc string\n \"\"\"\n""""
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
@gherkin3
|
|
2
|
-
Feature: Example elements can be modeled.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
Acceptance criteria
|
|
6
|
-
|
|
7
|
-
1. All conceptual pieces of an example block can be modeled:
|
|
8
|
-
- the example's name
|
|
9
|
-
- the example's description
|
|
10
|
-
- the example's parameters
|
|
11
|
-
- the example's rows
|
|
12
|
-
- the example's tags
|
|
13
|
-
- the example's applied tags
|
|
14
|
-
- the example's source line
|
|
15
|
-
- the example's raw element
|
|
16
|
-
|
|
17
|
-
2. Example blocks can be outputted in a convenient form
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
Background: Test file setup.
|
|
21
|
-
Given the following feature file:
|
|
22
|
-
"""
|
|
23
|
-
@a_feature_level_tag
|
|
24
|
-
Feature:
|
|
25
|
-
|
|
26
|
-
@outline_tag
|
|
27
|
-
Scenario Outline:
|
|
28
|
-
* a step
|
|
29
|
-
|
|
30
|
-
Examples: text describing the significance of the examples
|
|
31
|
-
|
|
32
|
-
Some example description.
|
|
33
|
-
|
|
34
|
-
Some more.
|
|
35
|
-
Even more.
|
|
36
|
-
|param1| param2 | extra param |
|
|
37
|
-
|x | y | ? |
|
|
38
|
-
|1 | 2 | 3 |
|
|
39
|
-
@example_tag @another_one
|
|
40
|
-
Examples: some examples with different significance and a tag
|
|
41
|
-
| param1 |
|
|
42
|
-
| a |
|
|
43
|
-
"""
|
|
44
|
-
And parameter delimiters of "*" and "*"
|
|
45
|
-
When the file is read
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
Scenario: The raw example element is modeled.
|
|
49
|
-
Then the test example block correctly stores its underlying implementation
|
|
50
|
-
|
|
51
|
-
Scenario: The example's source line is modeled.
|
|
52
|
-
Then the test example block "1" is found to have the following properties:
|
|
53
|
-
| source_line | 8 |
|
|
54
|
-
And the test example block "2" is found to have the following properties:
|
|
55
|
-
| source_line | 18 |
|
|
56
|
-
|
|
57
|
-
Scenario: The examples' name is modeled.
|
|
58
|
-
Then the test example block "1" is found to have the following properties:
|
|
59
|
-
| name | text describing the significance of the examples |
|
|
60
|
-
And the test example block "2" is found to have the following properties:
|
|
61
|
-
| name | some examples with different significance and a tag |
|
|
62
|
-
|
|
63
|
-
Scenario: The examples' description is modeled.
|
|
64
|
-
Then the test example block "1" has the following description:
|
|
65
|
-
"""
|
|
66
|
-
Some example description.
|
|
67
|
-
|
|
68
|
-
Some more.
|
|
69
|
-
Even more.
|
|
70
|
-
"""
|
|
71
|
-
And the test example block "2" has no description
|
|
72
|
-
|
|
73
|
-
Scenario: The examples' tags are modeled.
|
|
74
|
-
Then the test example block "1" has no tags
|
|
75
|
-
And the test example block "2" is found to have the following tags:
|
|
76
|
-
| @example_tag |
|
|
77
|
-
| @another_one |
|
|
78
|
-
|
|
79
|
-
Scenario: The examples' applied tags are modeled.
|
|
80
|
-
Then the test example block "2" is found to have the following applied tags:
|
|
81
|
-
| @a_feature_level_tag |
|
|
82
|
-
| @outline_tag |
|
|
83
|
-
|
|
84
|
-
Scenario: The examples' parameters are modeled.
|
|
85
|
-
Then the test example block "1" parameters are as follows:
|
|
86
|
-
| param1 |
|
|
87
|
-
| param2 |
|
|
88
|
-
| extra param |
|
|
89
|
-
And the test example block "2" parameters are as follows:
|
|
90
|
-
| param1 |
|
|
91
|
-
|
|
92
|
-
Scenario: The examples' rows are modeled.
|
|
93
|
-
Then the test example block "1" rows are as follows:
|
|
94
|
-
| x,y,? |
|
|
95
|
-
| 1,2,3 |
|
|
96
|
-
And the test example block "2" rows are as follows:
|
|
97
|
-
| a |
|
|
98
|
-
|
|
99
|
-
Scenario: Convenient output of an example block
|
|
100
|
-
Then the example block has convenient output
|
|
@@ -1,207 +0,0 @@
|
|
|
1
|
-
@gherkin3
|
|
2
|
-
Feature: Outputting example elements
|
|
3
|
-
|
|
4
|
-
The output of an element model is a representation of the element as it would
|
|
5
|
-
appear in gherkin.
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
Scenario: Output of an example that does not have a name
|
|
9
|
-
Given an example element based on the following gherkin:
|
|
10
|
-
"""
|
|
11
|
-
Examples:
|
|
12
|
-
|param|
|
|
13
|
-
|value|
|
|
14
|
-
"""
|
|
15
|
-
When it is outputted
|
|
16
|
-
Then the following text is provided:
|
|
17
|
-
"""
|
|
18
|
-
Examples:
|
|
19
|
-
| param |
|
|
20
|
-
| value |
|
|
21
|
-
"""
|
|
22
|
-
|
|
23
|
-
Scenario: Output of an example that does have a name
|
|
24
|
-
Given an example element based on the following gherkin:
|
|
25
|
-
"""
|
|
26
|
-
Examples: with a name
|
|
27
|
-
|param|
|
|
28
|
-
|value|
|
|
29
|
-
"""
|
|
30
|
-
When it is outputted
|
|
31
|
-
Then the following text is provided:
|
|
32
|
-
"""
|
|
33
|
-
Examples: with a name
|
|
34
|
-
| param |
|
|
35
|
-
| value |
|
|
36
|
-
"""
|
|
37
|
-
|
|
38
|
-
Scenario: Output of an example that does not have tags
|
|
39
|
-
Given an example element based on the following gherkin:
|
|
40
|
-
"""
|
|
41
|
-
Examples:
|
|
42
|
-
|param|
|
|
43
|
-
|value|
|
|
44
|
-
"""
|
|
45
|
-
When it is outputted
|
|
46
|
-
Then the following text is provided:
|
|
47
|
-
"""
|
|
48
|
-
Examples:
|
|
49
|
-
| param |
|
|
50
|
-
| value |
|
|
51
|
-
"""
|
|
52
|
-
|
|
53
|
-
Scenario: Output of an example that does have tags
|
|
54
|
-
Given an example element based on the following gherkin:
|
|
55
|
-
"""
|
|
56
|
-
@tag1@tag2
|
|
57
|
-
@tag3
|
|
58
|
-
Examples:
|
|
59
|
-
|param|
|
|
60
|
-
|value|
|
|
61
|
-
"""
|
|
62
|
-
When it is outputted
|
|
63
|
-
Then the following text is provided:
|
|
64
|
-
"""
|
|
65
|
-
@tag1 @tag2 @tag3
|
|
66
|
-
Examples:
|
|
67
|
-
| param |
|
|
68
|
-
| value |
|
|
69
|
-
"""
|
|
70
|
-
|
|
71
|
-
Scenario: Output of an example that has a description, no first line buffer
|
|
72
|
-
Given an example element based on the following gherkin:
|
|
73
|
-
"""
|
|
74
|
-
Examples:
|
|
75
|
-
Some description.
|
|
76
|
-
Some more description.
|
|
77
|
-
|param|
|
|
78
|
-
|value|
|
|
79
|
-
"""
|
|
80
|
-
When it is outputted
|
|
81
|
-
Then the following text is provided:
|
|
82
|
-
"""
|
|
83
|
-
Examples:
|
|
84
|
-
|
|
85
|
-
Some description.
|
|
86
|
-
Some more description.
|
|
87
|
-
|
|
88
|
-
| param |
|
|
89
|
-
| value |
|
|
90
|
-
"""
|
|
91
|
-
|
|
92
|
-
Scenario: Output of an example that has a description, first line is blank
|
|
93
|
-
Given an example element based on the following gherkin:
|
|
94
|
-
"""
|
|
95
|
-
Examples:
|
|
96
|
-
|
|
97
|
-
Some description.
|
|
98
|
-
Some more description.
|
|
99
|
-
|param|
|
|
100
|
-
|value|
|
|
101
|
-
"""
|
|
102
|
-
When it is outputted
|
|
103
|
-
Then the following text is provided:
|
|
104
|
-
"""
|
|
105
|
-
Examples:
|
|
106
|
-
|
|
107
|
-
Some description.
|
|
108
|
-
Some more description.
|
|
109
|
-
|
|
110
|
-
| param |
|
|
111
|
-
| value |
|
|
112
|
-
"""
|
|
113
|
-
|
|
114
|
-
Scenario: Output of an example that has a description, first line is only whitespace
|
|
115
|
-
Given an example element based on the following gherkin:
|
|
116
|
-
"""
|
|
117
|
-
Examples:
|
|
118
|
-
|
|
119
|
-
Some description.
|
|
120
|
-
Some more description.
|
|
121
|
-
|param|
|
|
122
|
-
|value|
|
|
123
|
-
"""
|
|
124
|
-
When it is outputted
|
|
125
|
-
Then the following text is provided:
|
|
126
|
-
"""
|
|
127
|
-
Examples:
|
|
128
|
-
|
|
129
|
-
Some description.
|
|
130
|
-
Some more description.
|
|
131
|
-
|
|
132
|
-
| param |
|
|
133
|
-
| value |
|
|
134
|
-
"""
|
|
135
|
-
|
|
136
|
-
Scenario: Output of an example that has one rows
|
|
137
|
-
Given an example element based on the following gherkin:
|
|
138
|
-
"""
|
|
139
|
-
Examples:
|
|
140
|
-
|param1|param2|
|
|
141
|
-
|value1|value2|
|
|
142
|
-
"""
|
|
143
|
-
When it is outputted
|
|
144
|
-
Then the following text is provided:
|
|
145
|
-
"""
|
|
146
|
-
Examples:
|
|
147
|
-
| param1 | param2 |
|
|
148
|
-
| value1 | value2 |
|
|
149
|
-
"""
|
|
150
|
-
|
|
151
|
-
Scenario: Output of an example that has multiple rows
|
|
152
|
-
Given an example element based on the following gherkin:
|
|
153
|
-
"""
|
|
154
|
-
Examples:
|
|
155
|
-
|param1|param2|
|
|
156
|
-
|value1|value2|
|
|
157
|
-
|value3|value4|
|
|
158
|
-
"""
|
|
159
|
-
When it is outputted
|
|
160
|
-
Then the following text is provided:
|
|
161
|
-
"""
|
|
162
|
-
Examples:
|
|
163
|
-
| param1 | param2 |
|
|
164
|
-
| value1 | value2 |
|
|
165
|
-
| value3 | value4 |
|
|
166
|
-
"""
|
|
167
|
-
|
|
168
|
-
Scenario: Output of an example that contains all possible parts
|
|
169
|
-
Given an example element based on the following gherkin:
|
|
170
|
-
"""
|
|
171
|
-
@tag1@tag2
|
|
172
|
-
@tag3
|
|
173
|
-
Examples: with a name
|
|
174
|
-
Some description.
|
|
175
|
-
Some more description.
|
|
176
|
-
|param1|param2|
|
|
177
|
-
|value1|value2|
|
|
178
|
-
|value3|value4|
|
|
179
|
-
"""
|
|
180
|
-
When it is outputted
|
|
181
|
-
Then the following text is provided:
|
|
182
|
-
"""
|
|
183
|
-
@tag1 @tag2 @tag3
|
|
184
|
-
Examples: with a name
|
|
185
|
-
|
|
186
|
-
Some description.
|
|
187
|
-
Some more description.
|
|
188
|
-
|
|
189
|
-
| param1 | param2 |
|
|
190
|
-
| value1 | value2 |
|
|
191
|
-
| value3 | value4 |
|
|
192
|
-
"""
|
|
193
|
-
|
|
194
|
-
Scenario: Whitespace buffers are based on the longest value or parameter in a column
|
|
195
|
-
Given an example element based on the following gherkin:
|
|
196
|
-
"""
|
|
197
|
-
Examples:
|
|
198
|
-
|parameter_name|x|
|
|
199
|
-
|y|value_name|
|
|
200
|
-
"""
|
|
201
|
-
When it is outputted
|
|
202
|
-
Then the following text is provided:
|
|
203
|
-
"""
|
|
204
|
-
Examples:
|
|
205
|
-
| parameter_name | x |
|
|
206
|
-
| y | value_name |
|
|
207
|
-
"""
|