gherkin 4.0.0 → 4.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rsync +5 -0
- data/.travis.yml +16 -1
- data/Makefile +31 -36
- data/berp/CommandLine.dll +0 -0
- data/berp/RazorEngine.dll +0 -0
- data/berp/RazorEngine.pdb +0 -0
- data/berp/System.Web.Razor.dll +0 -0
- data/berp/berp.exe +0 -0
- data/berp/berp.pdb +0 -0
- data/bin/gherkin +34 -0
- data/bin/gherkin-generate-tokens +1 -1
- data/gherkin-languages.json +3191 -0
- data/gherkin.berp +46 -0
- data/gherkin.gemspec +6 -6
- data/lib/gherkin/gherkin-languages.json +225 -3
- data/lib/gherkin/pickles/compiler.rb +31 -31
- data/lib/gherkin/stream/gherkin_events.rb +69 -0
- data/lib/gherkin/stream/source_events.rb +26 -0
- data/lib/gherkin/token_scanner.rb +1 -1
- data/testdata/bad/inconsistent_cell_count.feature +14 -0
- data/testdata/bad/inconsistent_cell_count.feature.errors.ndjson +2 -0
- data/testdata/bad/invalid_language.feature +6 -0
- data/testdata/bad/invalid_language.feature.errors.ndjson +1 -0
- data/testdata/bad/multiple_parser_errors.feature +9 -0
- data/testdata/bad/multiple_parser_errors.feature.errors.ndjson +2 -0
- data/testdata/bad/not_gherkin.feature +2 -0
- data/testdata/bad/not_gherkin.feature.errors.ndjson +1 -0
- data/testdata/bad/single_parser_error.feature +7 -0
- data/testdata/bad/single_parser_error.feature.errors.ndjson +1 -0
- data/testdata/bad/unexpected_eof.feature +6 -0
- data/testdata/bad/unexpected_eof.feature.errors.ndjson +1 -0
- data/testdata/good/background.feature +8 -0
- data/testdata/good/background.feature.ast.ndjson +1 -0
- data/testdata/good/background.feature.pickles.ndjson +1 -0
- data/testdata/good/background.feature.source.ndjson +1 -0
- data/testdata/good/background.feature.tokens +9 -0
- data/testdata/good/datatables.feature +18 -0
- data/testdata/good/datatables.feature.ast.ndjson +1 -0
- data/testdata/good/datatables.feature.pickles.ndjson +1 -0
- data/testdata/good/datatables.feature.source.ndjson +1 -0
- data/testdata/good/datatables.feature.tokens +19 -0
- data/testdata/good/descriptions.feature +52 -0
- data/testdata/good/descriptions.feature.ast.ndjson +1 -0
- data/testdata/good/descriptions.feature.pickles.ndjson +8 -0
- data/testdata/good/descriptions.feature.source.ndjson +1 -0
- data/testdata/good/descriptions.feature.tokens +53 -0
- data/testdata/good/docstrings.feature +43 -0
- data/testdata/good/docstrings.feature.ast.ndjson +1 -0
- data/testdata/good/docstrings.feature.pickles.ndjson +1 -0
- data/testdata/good/docstrings.feature.source.ndjson +1 -0
- data/testdata/good/docstrings.feature.tokens +44 -0
- data/testdata/good/empty.feature +0 -0
- data/testdata/good/empty.feature.ast.ndjson +1 -0
- data/testdata/good/empty.feature.pickles.ndjson +0 -0
- data/testdata/good/empty.feature.source.ndjson +1 -0
- data/testdata/good/empty.feature.tokens +1 -0
- data/testdata/good/escaped_pipes.feature +11 -0
- data/testdata/good/escaped_pipes.feature.ast.ndjson +1 -0
- data/testdata/good/escaped_pipes.feature.pickles.ndjson +1 -0
- data/testdata/good/escaped_pipes.feature.source.ndjson +1 -0
- data/testdata/good/escaped_pipes.feature.tokens +14 -0
- data/testdata/good/example_token_multiple.feature +8 -0
- data/testdata/good/example_token_multiple.feature.ast.ndjson +1 -0
- data/testdata/good/example_token_multiple.feature.pickles.ndjson +1 -0
- data/testdata/good/example_token_multiple.feature.source.ndjson +1 -0
- data/testdata/good/example_token_multiple.feature.tokens +9 -0
- data/testdata/good/example_tokens_everywhere.feature +14 -0
- data/testdata/good/example_tokens_everywhere.feature.ast.ndjson +1 -0
- data/testdata/good/example_tokens_everywhere.feature.pickles.ndjson +2 -0
- data/testdata/good/example_tokens_everywhere.feature.source.ndjson +1 -0
- data/testdata/good/example_tokens_everywhere.feature.tokens +15 -0
- data/testdata/good/i18n_emoji.feature +5 -0
- data/testdata/good/i18n_emoji.feature.ast.ndjson +1 -0
- data/testdata/good/i18n_emoji.feature.pickles.ndjson +1 -0
- data/testdata/good/i18n_emoji.feature.source.ndjson +1 -0
- data/testdata/good/i18n_emoji.feature.tokens +6 -0
- data/testdata/good/i18n_fr.feature +63 -0
- data/testdata/good/i18n_fr.feature.ast.ndjson +1 -0
- data/testdata/good/i18n_fr.feature.pickles.ndjson +11 -0
- data/testdata/good/i18n_fr.feature.source.ndjson +1 -0
- data/testdata/good/i18n_fr.feature.tokens +64 -0
- data/testdata/good/i18n_no.feature +7 -0
- data/testdata/good/i18n_no.feature.ast.ndjson +1 -0
- data/testdata/good/i18n_no.feature.pickles.ndjson +1 -0
- data/testdata/good/i18n_no.feature.source.ndjson +1 -0
- data/testdata/good/i18n_no.feature.tokens +8 -0
- data/testdata/good/incomplete_background_1.feature +6 -0
- data/testdata/good/incomplete_background_1.feature.ast.ndjson +1 -0
- data/testdata/good/incomplete_background_1.feature.pickles.ndjson +1 -0
- data/testdata/good/incomplete_background_1.feature.source.ndjson +1 -0
- data/testdata/good/incomplete_background_1.feature.tokens +7 -0
- data/testdata/good/incomplete_background_2.feature +7 -0
- data/testdata/good/incomplete_background_2.feature.ast.ndjson +1 -0
- data/testdata/good/incomplete_background_2.feature.pickles.ndjson +1 -0
- data/testdata/good/incomplete_background_2.feature.source.ndjson +1 -0
- data/testdata/good/incomplete_background_2.feature.tokens +8 -0
- data/testdata/good/incomplete_feature_1.feature +2 -0
- data/testdata/good/incomplete_feature_1.feature.ast.ndjson +1 -0
- data/testdata/good/incomplete_feature_1.feature.pickles.ndjson +0 -0
- data/testdata/good/incomplete_feature_1.feature.source.ndjson +1 -0
- data/testdata/good/incomplete_feature_1.feature.tokens +3 -0
- data/testdata/good/incomplete_feature_2.feature +1 -0
- data/testdata/good/incomplete_feature_2.feature.ast.ndjson +1 -0
- data/testdata/good/incomplete_feature_2.feature.pickles.ndjson +0 -0
- data/testdata/good/incomplete_feature_2.feature.source.ndjson +1 -0
- data/testdata/good/incomplete_feature_2.feature.tokens +2 -0
- data/testdata/good/incomplete_feature_3.feature +1 -0
- data/testdata/good/incomplete_feature_3.feature.ast.ndjson +1 -0
- data/testdata/good/incomplete_feature_3.feature.pickles.ndjson +0 -0
- data/testdata/good/incomplete_feature_3.feature.source.ndjson +1 -0
- data/testdata/good/incomplete_feature_3.feature.tokens +2 -0
- data/testdata/good/incomplete_scenario.feature +6 -0
- data/testdata/good/incomplete_scenario.feature.ast.ndjson +1 -0
- data/testdata/good/incomplete_scenario.feature.pickles.ndjson +0 -0
- data/testdata/good/incomplete_scenario.feature.source.ndjson +1 -0
- data/testdata/good/incomplete_scenario.feature.tokens +7 -0
- data/testdata/good/incomplete_scenario_outline.feature +24 -0
- data/testdata/good/incomplete_scenario_outline.feature.ast.ndjson +1 -0
- data/testdata/good/incomplete_scenario_outline.feature.pickles.ndjson +0 -0
- data/testdata/good/incomplete_scenario_outline.feature.source.ndjson +1 -0
- data/testdata/good/incomplete_scenario_outline.feature.tokens +25 -0
- data/testdata/good/language.feature +6 -0
- data/testdata/good/language.feature.ast.ndjson +1 -0
- data/testdata/good/language.feature.pickles.ndjson +1 -0
- data/testdata/good/language.feature.source.ndjson +1 -0
- data/testdata/good/language.feature.tokens +7 -0
- data/testdata/good/minimal.feature +4 -0
- data/testdata/good/minimal.feature.ast.ndjson +1 -0
- data/testdata/good/minimal.feature.pickles.ndjson +1 -0
- data/testdata/good/minimal.feature.source.ndjson +1 -0
- data/testdata/good/minimal.feature.tokens +5 -0
- data/testdata/good/readme_example.feature +18 -0
- data/testdata/good/readme_example.feature.ast.ndjson +1 -0
- data/testdata/good/readme_example.feature.pickles.ndjson +2 -0
- data/testdata/good/readme_example.feature.source.ndjson +1 -0
- data/testdata/good/readme_example.feature.tokens +19 -0
- data/testdata/good/scenario_outline.feature +8 -0
- data/testdata/good/scenario_outline.feature.ast.ndjson +1 -0
- data/testdata/good/scenario_outline.feature.pickles.ndjson +1 -0
- data/testdata/good/scenario_outline.feature.source.ndjson +1 -0
- data/testdata/good/scenario_outline.feature.tokens +9 -0
- data/testdata/good/scenario_outline_no_newline.feature +8 -0
- data/testdata/good/scenario_outline_no_newline.feature.ast.ndjson +1 -0
- data/testdata/good/scenario_outline_no_newline.feature.pickles.ndjson +1 -0
- data/testdata/good/scenario_outline_no_newline.feature.source.ndjson +1 -0
- data/testdata/good/scenario_outline_no_newline.feature.tokens +9 -0
- data/testdata/good/scenario_outlines_with_tags.feature +18 -0
- data/testdata/good/scenario_outlines_with_tags.feature.ast.ndjson +1 -0
- data/testdata/good/scenario_outlines_with_tags.feature.pickles.ndjson +2 -0
- data/testdata/good/scenario_outlines_with_tags.feature.source.ndjson +1 -0
- data/testdata/good/scenario_outlines_with_tags.feature.tokens +19 -0
- data/testdata/good/several_examples.feature +17 -0
- data/testdata/good/several_examples.feature.ast.ndjson +1 -0
- data/testdata/good/several_examples.feature.pickles.ndjson +2 -0
- data/testdata/good/several_examples.feature.source.ndjson +1 -0
- data/testdata/good/several_examples.feature.tokens +18 -0
- data/testdata/good/spaces_in_language.feature +2 -0
- data/testdata/good/spaces_in_language.feature.ast.ndjson +1 -0
- data/testdata/good/spaces_in_language.feature.pickles.ndjson +0 -0
- data/testdata/good/spaces_in_language.feature.source.ndjson +1 -0
- data/testdata/good/spaces_in_language.feature.tokens +3 -0
- data/testdata/good/tags.feature +25 -0
- data/testdata/good/tags.feature.ast.ndjson +1 -0
- data/testdata/good/tags.feature.pickles.ndjson +3 -0
- data/testdata/good/tags.feature.source.ndjson +1 -0
- data/testdata/good/tags.feature.tokens +26 -0
- metadata +176 -25
- data/bin/gherkin-generate-ast +0 -22
- data/bin/gherkin-generate-pickles +0 -26
@@ -0,0 +1,24 @@
|
|
1
|
+
Feature: Incomplete scenario outlines
|
2
|
+
|
3
|
+
Background: Adding a background won't make a pickle
|
4
|
+
* a step
|
5
|
+
|
6
|
+
Scenario Outline: steps, no examples
|
7
|
+
Given a step
|
8
|
+
|
9
|
+
Scenario Outline: no steps, no examples
|
10
|
+
|
11
|
+
Scenario Outline: no steps, no table
|
12
|
+
|
13
|
+
Examples:
|
14
|
+
|
15
|
+
Scenario Outline: no steps, only table header
|
16
|
+
|
17
|
+
Examples:
|
18
|
+
| what |
|
19
|
+
|
20
|
+
Scenario Outline: no steps, one example header
|
21
|
+
|
22
|
+
Examples:
|
23
|
+
| nope |
|
24
|
+
| nada |
|
@@ -0,0 +1 @@
|
|
1
|
+
{"document":{"comments":[],"feature":{"children":[{"keyword":"Background","location":{"column":3,"line":3},"name":"Adding a background won't make a pickle","steps":[{"keyword":"* ","location":{"column":5,"line":4},"text":"a step","type":"Step"}],"type":"Background"},{"examples":[],"keyword":"Scenario Outline","location":{"column":3,"line":6},"name":"steps, no examples","steps":[{"keyword":"Given ","location":{"column":5,"line":7},"text":"a step","type":"Step"}],"tags":[],"type":"ScenarioOutline"},{"examples":[],"keyword":"Scenario Outline","location":{"column":3,"line":9},"name":"no steps, no examples","steps":[],"tags":[],"type":"ScenarioOutline"},{"examples":[{"keyword":"Examples","location":{"column":5,"line":13},"name":"","tags":[],"type":"Examples"}],"keyword":"Scenario Outline","location":{"column":3,"line":11},"name":"no steps, no table","steps":[],"tags":[],"type":"ScenarioOutline"},{"examples":[{"keyword":"Examples","location":{"column":5,"line":17},"name":"","tableBody":[],"tableHeader":{"cells":[{"location":{"column":7,"line":18},"type":"TableCell","value":"what"}],"location":{"column":5,"line":18},"type":"TableRow"},"tags":[],"type":"Examples"}],"keyword":"Scenario Outline","location":{"column":3,"line":15},"name":"no steps, only table header","steps":[],"tags":[],"type":"ScenarioOutline"},{"examples":[{"keyword":"Examples","location":{"column":5,"line":22},"name":"","tableBody":[{"cells":[{"location":{"column":7,"line":24},"type":"TableCell","value":"nada"}],"location":{"column":5,"line":24},"type":"TableRow"}],"tableHeader":{"cells":[{"location":{"column":7,"line":23},"type":"TableCell","value":"nope"}],"location":{"column":5,"line":23},"type":"TableRow"},"tags":[],"type":"Examples"}],"keyword":"Scenario Outline","location":{"column":3,"line":20},"name":"no steps, one example header","steps":[],"tags":[],"type":"ScenarioOutline"}],"keyword":"Feature","language":"en","location":{"column":1,"line":1},"name":"Incomplete scenario outlines","tags":[],"type":"Feature"},"type":"GherkinDocument"},"type":"gherkin-document","uri":"testdata/good/incomplete_scenario_outline.feature"}
|
File without changes
|
@@ -0,0 +1 @@
|
|
1
|
+
{"data":"Feature: Incomplete scenario outlines\n\n Background: Adding a background won't make a pickle\n * a step\n\n Scenario Outline: steps, no examples\n Given a step\n\n Scenario Outline: no steps, no examples\n\n Scenario Outline: no steps, no table\n\n Examples:\n\n Scenario Outline: no steps, only table header\n\n Examples:\n | what |\n\n Scenario Outline: no steps, one example header\n\n Examples:\n | nope |\n | nada |\n","media":{"encoding":"utf-8","type":"text/vnd.cucumber.gherkin+plain"},"type":"source","uri":"testdata/good/incomplete_scenario_outline.feature"}
|
@@ -0,0 +1,25 @@
|
|
1
|
+
(1:1)FeatureLine:Feature/Incomplete scenario outlines/
|
2
|
+
(2:1)Empty://
|
3
|
+
(3:3)BackgroundLine:Background/Adding a background won't make a pickle/
|
4
|
+
(4:5)StepLine:* /a step/
|
5
|
+
(5:1)Empty://
|
6
|
+
(6:3)ScenarioOutlineLine:Scenario Outline/steps, no examples/
|
7
|
+
(7:5)StepLine:Given /a step/
|
8
|
+
(8:1)Empty://
|
9
|
+
(9:3)ScenarioOutlineLine:Scenario Outline/no steps, no examples/
|
10
|
+
(10:1)Empty://
|
11
|
+
(11:3)ScenarioOutlineLine:Scenario Outline/no steps, no table/
|
12
|
+
(12:1)Empty://
|
13
|
+
(13:5)ExamplesLine:Examples//
|
14
|
+
(14:1)Empty://
|
15
|
+
(15:3)ScenarioOutlineLine:Scenario Outline/no steps, only table header/
|
16
|
+
(16:1)Empty://
|
17
|
+
(17:5)ExamplesLine:Examples//
|
18
|
+
(18:5)TableRow://7:what
|
19
|
+
(19:1)Empty://
|
20
|
+
(20:3)ScenarioOutlineLine:Scenario Outline/no steps, one example header/
|
21
|
+
(21:1)Empty://
|
22
|
+
(22:5)ExamplesLine:Examples//
|
23
|
+
(23:5)TableRow://7:nope
|
24
|
+
(24:5)TableRow://7:nada
|
25
|
+
EOF
|
@@ -0,0 +1 @@
|
|
1
|
+
{"document":{"comments":[],"feature":{"children":[{"keyword":"Scenario","location":{"column":3,"line":5},"name":"minimalistic","steps":[{"keyword":"Given ","location":{"column":5,"line":6},"text":"the minimalism","type":"Step"}],"tags":[],"type":"Scenario"}],"keyword":"Feature","language":"en","location":{"column":1,"line":3},"name":"Explicit language specification","tags":[],"type":"Feature"},"type":"GherkinDocument"},"type":"gherkin-document","uri":"testdata/good/language.feature"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"pickle":{"language":"en","locations":[{"column":3,"line":5}],"name":"minimalistic","steps":[{"arguments":[],"locations":[{"column":11,"line":6}],"text":"the minimalism"}],"tags":[]},"type":"pickle","uri":"testdata/good/language.feature"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"data":"#language:en\n\nFeature: Explicit language specification\n\n Scenario: minimalistic\n Given the minimalism\n","media":{"encoding":"utf-8","type":"text/vnd.cucumber.gherkin+plain"},"type":"source","uri":"testdata/good/language.feature"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"document":{"comments":[],"feature":{"children":[{"keyword":"Scenario","location":{"column":3,"line":3},"name":"minimalistic","steps":[{"keyword":"Given ","location":{"column":5,"line":4},"text":"the minimalism","type":"Step"}],"tags":[],"type":"Scenario"}],"keyword":"Feature","language":"en","location":{"column":1,"line":1},"name":"Minimal","tags":[],"type":"Feature"},"type":"GherkinDocument"},"type":"gherkin-document","uri":"testdata/good/minimal.feature"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"pickle":{"language":"en","locations":[{"column":3,"line":3}],"name":"minimalistic","steps":[{"arguments":[],"locations":[{"column":11,"line":4}],"text":"the minimalism"}],"tags":[]},"type":"pickle","uri":"testdata/good/minimal.feature"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"data":"Feature: Minimal\n\n Scenario: minimalistic\n Given the minimalism\n","media":{"encoding":"utf-8","type":"text/vnd.cucumber.gherkin+plain"},"type":"source","uri":"testdata/good/minimal.feature"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"document":{"comments":[],"feature":{"children":[{"examples":[{"keyword":"Examples","location":{"column":5,"line":7},"name":"","tableBody":[{"cells":[{"location":{"column":9,"line":9},"type":"TableCell","value":"y"}],"location":{"column":7,"line":9},"type":"TableRow"}],"tableHeader":{"cells":[{"location":{"column":9,"line":8},"type":"TableCell","value":"x"}],"location":{"column":7,"line":8},"type":"TableRow"},"tags":[],"type":"Examples"}],"keyword":"Scenario Outline","location":{"column":3,"line":4},"name":"","steps":[{"keyword":"Given ","location":{"column":5,"line":5},"text":"<x>","type":"Step"}],"tags":[{"location":{"column":3,"line":3},"name":"@b","type":"Tag"},{"location":{"column":6,"line":3},"name":"@c","type":"Tag"}],"type":"ScenarioOutline"},{"examples":[{"keyword":"Examples","location":{"column":5,"line":16},"name":"","tableBody":[{"cells":[{"location":{"column":9,"line":18},"type":"TableCell","value":"n"}],"location":{"column":7,"line":18},"type":"TableRow"}],"tableHeader":{"cells":[{"location":{"column":9,"line":17},"type":"TableCell","value":"m"}],"location":{"column":7,"line":17},"type":"TableRow"},"tags":[{"location":{"column":5,"line":15},"name":"@f","type":"Tag"}],"type":"Examples"}],"keyword":"Scenario Outline","location":{"column":3,"line":12},"name":"","steps":[{"keyword":"Given ","location":{"column":5,"line":13},"text":"<m>","type":"Step"}],"tags":[{"location":{"column":3,"line":11},"name":"@d","type":"Tag"},{"location":{"column":6,"line":11},"name":"@e","type":"Tag"}],"type":"ScenarioOutline"}],"keyword":"Feature","language":"en","location":{"column":1,"line":2},"name":"","tags":[{"location":{"column":1,"line":1},"name":"@a","type":"Tag"}],"type":"Feature"},"type":"GherkinDocument"},"type":"gherkin-document","uri":"testdata/good/readme_example.feature"}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
{"pickle":{"language":"en","locations":[{"column":7,"line":9},{"column":3,"line":4}],"name":"","steps":[{"arguments":[],"locations":[{"column":7,"line":9},{"column":11,"line":5}],"text":"y"}],"tags":[{"location":{"column":1,"line":1},"name":"@a"},{"location":{"column":3,"line":3},"name":"@b"},{"location":{"column":6,"line":3},"name":"@c"}]},"type":"pickle","uri":"testdata/good/readme_example.feature"}
|
2
|
+
{"pickle":{"language":"en","locations":[{"column":7,"line":18},{"column":3,"line":12}],"name":"","steps":[{"arguments":[],"locations":[{"column":7,"line":18},{"column":11,"line":13}],"text":"n"}],"tags":[{"location":{"column":1,"line":1},"name":"@a"},{"location":{"column":3,"line":11},"name":"@d"},{"location":{"column":6,"line":11},"name":"@e"},{"location":{"column":5,"line":15},"name":"@f"}]},"type":"pickle","uri":"testdata/good/readme_example.feature"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"data":"@a\nFeature:\n @b @c\n Scenario Outline:\n Given <x>\n\n Examples:\n | x |\n | y |\n\n @d @e\n Scenario Outline:\n Given <m>\n\n @f\n Examples:\n | m |\n | n |\n","media":{"encoding":"utf-8","type":"text/vnd.cucumber.gherkin+plain"},"type":"source","uri":"testdata/good/readme_example.feature"}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
(1:1)TagLine://1:@a
|
2
|
+
(2:1)FeatureLine:Feature//
|
3
|
+
(3:3)TagLine://3:@b,6:@c
|
4
|
+
(4:3)ScenarioOutlineLine:Scenario Outline//
|
5
|
+
(5:5)StepLine:Given /<x>/
|
6
|
+
(6:1)Empty://
|
7
|
+
(7:5)ExamplesLine:Examples//
|
8
|
+
(8:7)TableRow://9:x
|
9
|
+
(9:7)TableRow://9:y
|
10
|
+
(10:1)Empty://
|
11
|
+
(11:3)TagLine://3:@d,6:@e
|
12
|
+
(12:3)ScenarioOutlineLine:Scenario Outline//
|
13
|
+
(13:5)StepLine:Given /<m>/
|
14
|
+
(14:1)Empty://
|
15
|
+
(15:5)TagLine://5:@f
|
16
|
+
(16:5)ExamplesLine:Examples//
|
17
|
+
(17:7)TableRow://9:m
|
18
|
+
(18:7)TableRow://9:n
|
19
|
+
EOF
|
@@ -0,0 +1 @@
|
|
1
|
+
{"document":{"comments":[],"feature":{"children":[{"examples":[{"keyword":"Examples","location":{"column":1,"line":6},"name":"","tableBody":[{"cells":[{"location":{"column":5,"line":8},"type":"TableCell","value":"minimalism"}],"location":{"column":3,"line":8},"type":"TableRow"}],"tableHeader":{"cells":[{"location":{"column":5,"line":7},"type":"TableCell","value":"what"}],"location":{"column":3,"line":7},"type":"TableRow"},"tags":[],"type":"Examples"}],"keyword":"Scenario Outline","location":{"column":1,"line":3},"name":"minimalistic","steps":[{"keyword":"Given ","location":{"column":5,"line":4},"text":"the <what>","type":"Step"}],"tags":[],"type":"ScenarioOutline"}],"keyword":"Feature","language":"en","location":{"column":1,"line":1},"name":"Minimal Scenario Outline","tags":[],"type":"Feature"},"type":"GherkinDocument"},"type":"gherkin-document","uri":"testdata/good/scenario_outline.feature"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"pickle":{"language":"en","locations":[{"column":3,"line":8},{"column":1,"line":3}],"name":"minimalistic","steps":[{"arguments":[],"locations":[{"column":3,"line":8},{"column":11,"line":4}],"text":"the minimalism"}],"tags":[]},"type":"pickle","uri":"testdata/good/scenario_outline.feature"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"data":"Feature: Minimal Scenario Outline\n\nScenario Outline: minimalistic\n Given the <what>\n\nExamples:\n | what |\n | minimalism |\n","media":{"encoding":"utf-8","type":"text/vnd.cucumber.gherkin+plain"},"type":"source","uri":"testdata/good/scenario_outline.feature"}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
(1:1)FeatureLine:Feature/Minimal Scenario Outline/
|
2
|
+
(2:1)Empty://
|
3
|
+
(3:1)ScenarioOutlineLine:Scenario Outline/minimalistic/
|
4
|
+
(4:5)StepLine:Given /the <what>/
|
5
|
+
(5:1)Empty://
|
6
|
+
(6:1)ExamplesLine:Examples//
|
7
|
+
(7:3)TableRow://5:what
|
8
|
+
(8:3)TableRow://5:minimalism
|
9
|
+
EOF
|
@@ -0,0 +1 @@
|
|
1
|
+
{"document":{"comments":[],"feature":{"children":[{"examples":[{"keyword":"Examples","location":{"column":1,"line":6},"name":"","tableBody":[{"cells":[{"location":{"column":5,"line":8},"type":"TableCell","value":"minimalism"}],"location":{"column":3,"line":8},"type":"TableRow"}],"tableHeader":{"cells":[{"location":{"column":5,"line":7},"type":"TableCell","value":"what"}],"location":{"column":3,"line":7},"type":"TableRow"},"tags":[],"type":"Examples"}],"keyword":"Scenario Outline","location":{"column":1,"line":3},"name":"minimalistic","steps":[{"keyword":"Given ","location":{"column":5,"line":4},"text":"the <what>","type":"Step"}],"tags":[],"type":"ScenarioOutline"}],"keyword":"Feature","language":"en","location":{"column":1,"line":1},"name":"Minimal Scenario Outline","tags":[],"type":"Feature"},"type":"GherkinDocument"},"type":"gherkin-document","uri":"testdata/good/scenario_outline_no_newline.feature"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"pickle":{"language":"en","locations":[{"column":3,"line":8},{"column":1,"line":3}],"name":"minimalistic","steps":[{"arguments":[],"locations":[{"column":3,"line":8},{"column":11,"line":4}],"text":"the minimalism"}],"tags":[]},"type":"pickle","uri":"testdata/good/scenario_outline_no_newline.feature"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"data":"Feature: Minimal Scenario Outline\n\nScenario Outline: minimalistic\n Given the <what>\n\nExamples:\n | what |\n | minimalism |","media":{"encoding":"utf-8","type":"text/vnd.cucumber.gherkin+plain"},"type":"source","uri":"testdata/good/scenario_outline_no_newline.feature"}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
(1:1)FeatureLine:Feature/Minimal Scenario Outline/
|
2
|
+
(2:1)Empty://
|
3
|
+
(3:1)ScenarioOutlineLine:Scenario Outline/minimalistic/
|
4
|
+
(4:5)StepLine:Given /the <what>/
|
5
|
+
(5:1)Empty://
|
6
|
+
(6:1)ExamplesLine:Examples//
|
7
|
+
(7:3)TableRow://5:what
|
8
|
+
(8:3)TableRow://5:minimalism
|
9
|
+
EOF
|
@@ -0,0 +1 @@
|
|
1
|
+
{"document":{"comments":[],"feature":{"children":[{"examples":[{"keyword":"Examples","location":{"column":5,"line":7},"name":"","tableBody":[{"cells":[{"location":{"column":9,"line":9},"type":"TableCell","value":"y"}],"location":{"column":7,"line":9},"type":"TableRow"}],"tableHeader":{"cells":[{"location":{"column":9,"line":8},"type":"TableCell","value":"x"}],"location":{"column":7,"line":8},"type":"TableRow"},"tags":[],"type":"Examples"}],"keyword":"Scenario Outline","location":{"column":3,"line":4},"name":"","steps":[{"keyword":"Given ","location":{"column":5,"line":5},"text":"<x>","type":"Step"}],"tags":[{"location":{"column":3,"line":3},"name":"@b","type":"Tag"},{"location":{"column":6,"line":3},"name":"@c","type":"Tag"}],"type":"ScenarioOutline"},{"examples":[{"keyword":"Examples","location":{"column":5,"line":16},"name":"","tableBody":[{"cells":[{"location":{"column":9,"line":18},"type":"TableCell","value":"n"}],"location":{"column":7,"line":18},"type":"TableRow"}],"tableHeader":{"cells":[{"location":{"column":9,"line":17},"type":"TableCell","value":"m"}],"location":{"column":7,"line":17},"type":"TableRow"},"tags":[{"location":{"column":5,"line":15},"name":"@f","type":"Tag"}],"type":"Examples"}],"keyword":"Scenario Outline","location":{"column":3,"line":12},"name":"","steps":[{"keyword":"Given ","location":{"column":5,"line":13},"text":"<m>","type":"Step"}],"tags":[{"location":{"column":3,"line":11},"name":"@d","type":"Tag"},{"location":{"column":6,"line":11},"name":"@e","type":"Tag"}],"type":"ScenarioOutline"}],"keyword":"Feature","language":"en","location":{"column":1,"line":2},"name":"","tags":[{"location":{"column":1,"line":1},"name":"@a","type":"Tag"}],"type":"Feature"},"type":"GherkinDocument"},"type":"gherkin-document","uri":"testdata/good/scenario_outlines_with_tags.feature"}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
{"pickle":{"language":"en","locations":[{"column":7,"line":9},{"column":3,"line":4}],"name":"","steps":[{"arguments":[],"locations":[{"column":7,"line":9},{"column":11,"line":5}],"text":"y"}],"tags":[{"location":{"column":1,"line":1},"name":"@a"},{"location":{"column":3,"line":3},"name":"@b"},{"location":{"column":6,"line":3},"name":"@c"}]},"type":"pickle","uri":"testdata/good/scenario_outlines_with_tags.feature"}
|
2
|
+
{"pickle":{"language":"en","locations":[{"column":7,"line":18},{"column":3,"line":12}],"name":"","steps":[{"arguments":[],"locations":[{"column":7,"line":18},{"column":11,"line":13}],"text":"n"}],"tags":[{"location":{"column":1,"line":1},"name":"@a"},{"location":{"column":3,"line":11},"name":"@d"},{"location":{"column":6,"line":11},"name":"@e"},{"location":{"column":5,"line":15},"name":"@f"}]},"type":"pickle","uri":"testdata/good/scenario_outlines_with_tags.feature"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"data":"@a\nFeature:\n @b @c\n Scenario Outline:\n Given <x>\n\n Examples:\n | x |\n | y |\n\n @d @e\n Scenario Outline:\n Given <m>\n\n @f\n Examples:\n | m |\n | n |\n","media":{"encoding":"utf-8","type":"text/vnd.cucumber.gherkin+plain"},"type":"source","uri":"testdata/good/scenario_outlines_with_tags.feature"}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
(1:1)TagLine://1:@a
|
2
|
+
(2:1)FeatureLine:Feature//
|
3
|
+
(3:3)TagLine://3:@b,6:@c
|
4
|
+
(4:3)ScenarioOutlineLine:Scenario Outline//
|
5
|
+
(5:5)StepLine:Given /<x>/
|
6
|
+
(6:1)Empty://
|
7
|
+
(7:5)ExamplesLine:Examples//
|
8
|
+
(8:7)TableRow://9:x
|
9
|
+
(9:7)TableRow://9:y
|
10
|
+
(10:1)Empty://
|
11
|
+
(11:3)TagLine://3:@d,6:@e
|
12
|
+
(12:3)ScenarioOutlineLine:Scenario Outline//
|
13
|
+
(13:5)StepLine:Given /<m>/
|
14
|
+
(14:1)Empty://
|
15
|
+
(15:5)TagLine://5:@f
|
16
|
+
(16:5)ExamplesLine:Examples//
|
17
|
+
(17:7)TableRow://9:m
|
18
|
+
(18:7)TableRow://9:n
|
19
|
+
EOF
|
@@ -0,0 +1 @@
|
|
1
|
+
{"document":{"comments":[],"feature":{"children":[{"examples":[{"keyword":"Examples","location":{"column":5,"line":7},"name":"","tableBody":[{"cells":[{"location":{"column":9,"line":9},"type":"TableCell","value":"foo"}],"location":{"column":7,"line":9},"type":"TableRow"}],"tableHeader":{"cells":[{"location":{"column":9,"line":8},"type":"TableCell","value":"what"}],"location":{"column":7,"line":8},"type":"TableRow"},"tags":[{"location":{"column":5,"line":6},"name":"@foo","type":"Tag"}],"type":"Examples"},{"keyword":"Examples","location":{"column":5,"line":12},"name":"","tableBody":[{"cells":[{"location":{"column":9,"line":14},"type":"TableCell","value":"bar"}],"location":{"column":7,"line":14},"type":"TableRow"}],"tableHeader":{"cells":[{"location":{"column":9,"line":13},"type":"TableCell","value":"what"}],"location":{"column":7,"line":13},"type":"TableRow"},"tags":[{"location":{"column":5,"line":11},"name":"@bar","type":"Tag"}],"type":"Examples"}],"keyword":"Scenario Outline","location":{"column":3,"line":3},"name":"minimalistic","steps":[{"keyword":"Given ","location":{"column":5,"line":4},"text":"the <what>","type":"Step"}],"tags":[],"type":"ScenarioOutline"},{"keyword":"Scenario","location":{"column":3,"line":17},"name":"ha ok","steps":[],"tags":[{"location":{"column":3,"line":16},"name":"@zap","type":"Tag"}],"type":"Scenario"}],"keyword":"Feature","language":"en","location":{"column":1,"line":1},"name":"Tagged Examples","tags":[],"type":"Feature"},"type":"GherkinDocument"},"type":"gherkin-document","uri":"testdata/good/several_examples.feature"}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
{"pickle":{"language":"en","locations":[{"column":7,"line":9},{"column":3,"line":3}],"name":"minimalistic","steps":[{"arguments":[],"locations":[{"column":7,"line":9},{"column":11,"line":4}],"text":"the foo"}],"tags":[{"location":{"column":5,"line":6},"name":"@foo"}]},"type":"pickle","uri":"testdata/good/several_examples.feature"}
|
2
|
+
{"pickle":{"language":"en","locations":[{"column":7,"line":14},{"column":3,"line":3}],"name":"minimalistic","steps":[{"arguments":[],"locations":[{"column":7,"line":14},{"column":11,"line":4}],"text":"the bar"}],"tags":[{"location":{"column":5,"line":11},"name":"@bar"}]},"type":"pickle","uri":"testdata/good/several_examples.feature"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"data":"Feature: Tagged Examples\n\n Scenario Outline: minimalistic\n Given the <what>\n\n @foo\n Examples:\n | what |\n | foo |\n\n @bar\n Examples:\n | what |\n | bar |\n\n @zap\n Scenario: ha ok\n","media":{"encoding":"utf-8","type":"text/vnd.cucumber.gherkin+plain"},"type":"source","uri":"testdata/good/several_examples.feature"}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
(1:1)FeatureLine:Feature/Tagged Examples/
|
2
|
+
(2:1)Empty://
|
3
|
+
(3:3)ScenarioOutlineLine:Scenario Outline/minimalistic/
|
4
|
+
(4:5)StepLine:Given /the <what>/
|
5
|
+
(5:1)Empty://
|
6
|
+
(6:5)TagLine://5:@foo
|
7
|
+
(7:5)ExamplesLine:Examples//
|
8
|
+
(8:7)TableRow://9:what
|
9
|
+
(9:7)TableRow://9:foo
|
10
|
+
(10:1)Empty://
|
11
|
+
(11:5)TagLine://5:@bar
|
12
|
+
(12:5)ExamplesLine:Examples//
|
13
|
+
(13:7)TableRow://9:what
|
14
|
+
(14:7)TableRow://9:bar
|
15
|
+
(15:1)Empty://
|
16
|
+
(16:3)TagLine://3:@zap
|
17
|
+
(17:3)ScenarioLine:Scenario/ha ok/
|
18
|
+
EOF
|
@@ -0,0 +1 @@
|
|
1
|
+
{"document":{"comments":[],"feature":{"children":[],"keyword":"OH HAI","language":"en-lol","location":{"column":1,"line":2},"name":"STUFFING","tags":[],"type":"Feature"},"type":"GherkinDocument"},"type":"gherkin-document","uri":"testdata/good/spaces_in_language.feature"}
|
File without changes
|
@@ -0,0 +1 @@
|
|
1
|
+
{"data":" # language : en-lol\nOH HAI: STUFFING\n","media":{"encoding":"utf-8","type":"text/vnd.cucumber.gherkin+plain"},"type":"source","uri":"testdata/good/spaces_in_language.feature"}
|
@@ -0,0 +1,25 @@
|
|
1
|
+
@feature_tag1 @feature_tag2
|
2
|
+
@feature_tag3
|
3
|
+
Feature: Minimal Scenario Outline
|
4
|
+
|
5
|
+
@scenario_tag1 @scenario_tag2
|
6
|
+
@scenario_tag3
|
7
|
+
Scenario: minimalistic
|
8
|
+
Given the minimalism
|
9
|
+
|
10
|
+
@so_tag1 @so_tag2
|
11
|
+
@so_tag3
|
12
|
+
Scenario Outline: minimalistic outline
|
13
|
+
Given the <what>
|
14
|
+
|
15
|
+
@ex_tag1 @ex_tag2
|
16
|
+
@ex_tag3
|
17
|
+
Examples:
|
18
|
+
| what |
|
19
|
+
| minimalism |
|
20
|
+
|
21
|
+
@ex_tag4 @ex_tag5
|
22
|
+
@ex_tag6
|
23
|
+
Examples:
|
24
|
+
| what |
|
25
|
+
| more minimalism |
|
@@ -0,0 +1 @@
|
|
1
|
+
{"document":{"comments":[],"feature":{"children":[{"keyword":"Scenario","location":{"column":1,"line":7},"name":"minimalistic","steps":[{"keyword":"Given ","location":{"column":5,"line":8},"text":"the minimalism","type":"Step"}],"tags":[{"location":{"column":1,"line":5},"name":"@scenario_tag1","type":"Tag"},{"location":{"column":16,"line":5},"name":"@scenario_tag2","type":"Tag"},{"location":{"column":3,"line":6},"name":"@scenario_tag3","type":"Tag"}],"type":"Scenario"},{"examples":[{"keyword":"Examples","location":{"column":1,"line":17},"name":"","tableBody":[{"cells":[{"location":{"column":5,"line":19},"type":"TableCell","value":"minimalism"}],"location":{"column":3,"line":19},"type":"TableRow"}],"tableHeader":{"cells":[{"location":{"column":5,"line":18},"type":"TableCell","value":"what"}],"location":{"column":3,"line":18},"type":"TableRow"},"tags":[{"location":{"column":1,"line":15},"name":"@ex_tag1","type":"Tag"},{"location":{"column":10,"line":15},"name":"@ex_tag2","type":"Tag"},{"location":{"column":3,"line":16},"name":"@ex_tag3","type":"Tag"}],"type":"Examples"},{"keyword":"Examples","location":{"column":1,"line":23},"name":"","tableBody":[{"cells":[{"location":{"column":5,"line":25},"type":"TableCell","value":"more minimalism"}],"location":{"column":3,"line":25},"type":"TableRow"}],"tableHeader":{"cells":[{"location":{"column":5,"line":24},"type":"TableCell","value":"what"}],"location":{"column":3,"line":24},"type":"TableRow"},"tags":[{"location":{"column":1,"line":21},"name":"@ex_tag4","type":"Tag"},{"location":{"column":10,"line":21},"name":"@ex_tag5","type":"Tag"},{"location":{"column":3,"line":22},"name":"@ex_tag6","type":"Tag"}],"type":"Examples"}],"keyword":"Scenario Outline","location":{"column":1,"line":12},"name":"minimalistic outline","steps":[{"keyword":"Given ","location":{"column":5,"line":13},"text":"the <what>","type":"Step"}],"tags":[{"location":{"column":1,"line":10},"name":"@so_tag1","type":"Tag"},{"location":{"column":11,"line":10},"name":"@so_tag2","type":"Tag"},{"location":{"column":3,"line":11},"name":"@so_tag3","type":"Tag"}],"type":"ScenarioOutline"}],"keyword":"Feature","language":"en","location":{"column":1,"line":3},"name":"Minimal Scenario Outline","tags":[{"location":{"column":1,"line":1},"name":"@feature_tag1","type":"Tag"},{"location":{"column":15,"line":1},"name":"@feature_tag2","type":"Tag"},{"location":{"column":3,"line":2},"name":"@feature_tag3","type":"Tag"}],"type":"Feature"},"type":"GherkinDocument"},"type":"gherkin-document","uri":"testdata/good/tags.feature"}
|
@@ -0,0 +1,3 @@
|
|
1
|
+
{"pickle":{"language":"en","locations":[{"column":1,"line":7}],"name":"minimalistic","steps":[{"arguments":[],"locations":[{"column":11,"line":8}],"text":"the minimalism"}],"tags":[{"location":{"column":1,"line":1},"name":"@feature_tag1"},{"location":{"column":15,"line":1},"name":"@feature_tag2"},{"location":{"column":3,"line":2},"name":"@feature_tag3"},{"location":{"column":1,"line":5},"name":"@scenario_tag1"},{"location":{"column":16,"line":5},"name":"@scenario_tag2"},{"location":{"column":3,"line":6},"name":"@scenario_tag3"}]},"type":"pickle","uri":"testdata/good/tags.feature"}
|
2
|
+
{"pickle":{"language":"en","locations":[{"column":3,"line":19},{"column":1,"line":12}],"name":"minimalistic outline","steps":[{"arguments":[],"locations":[{"column":3,"line":19},{"column":11,"line":13}],"text":"the minimalism"}],"tags":[{"location":{"column":1,"line":1},"name":"@feature_tag1"},{"location":{"column":15,"line":1},"name":"@feature_tag2"},{"location":{"column":3,"line":2},"name":"@feature_tag3"},{"location":{"column":1,"line":10},"name":"@so_tag1"},{"location":{"column":11,"line":10},"name":"@so_tag2"},{"location":{"column":3,"line":11},"name":"@so_tag3"},{"location":{"column":1,"line":15},"name":"@ex_tag1"},{"location":{"column":10,"line":15},"name":"@ex_tag2"},{"location":{"column":3,"line":16},"name":"@ex_tag3"}]},"type":"pickle","uri":"testdata/good/tags.feature"}
|
3
|
+
{"pickle":{"language":"en","locations":[{"column":3,"line":25},{"column":1,"line":12}],"name":"minimalistic outline","steps":[{"arguments":[],"locations":[{"column":3,"line":25},{"column":11,"line":13}],"text":"the more minimalism"}],"tags":[{"location":{"column":1,"line":1},"name":"@feature_tag1"},{"location":{"column":15,"line":1},"name":"@feature_tag2"},{"location":{"column":3,"line":2},"name":"@feature_tag3"},{"location":{"column":1,"line":10},"name":"@so_tag1"},{"location":{"column":11,"line":10},"name":"@so_tag2"},{"location":{"column":3,"line":11},"name":"@so_tag3"},{"location":{"column":1,"line":21},"name":"@ex_tag4"},{"location":{"column":10,"line":21},"name":"@ex_tag5"},{"location":{"column":3,"line":22},"name":"@ex_tag6"}]},"type":"pickle","uri":"testdata/good/tags.feature"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"data":"@feature_tag1 @feature_tag2\n @feature_tag3\nFeature: Minimal Scenario Outline\n\n@scenario_tag1 @scenario_tag2\n @scenario_tag3\nScenario: minimalistic\n Given the minimalism\n\n@so_tag1 @so_tag2 \n @so_tag3\nScenario Outline: minimalistic outline\n Given the <what>\n\n@ex_tag1 @ex_tag2\n @ex_tag3\nExamples: \n | what |\n | minimalism |\n\n@ex_tag4 @ex_tag5\n @ex_tag6\nExamples: \n | what |\n | more minimalism |\n","media":{"encoding":"utf-8","type":"text/vnd.cucumber.gherkin+plain"},"type":"source","uri":"testdata/good/tags.feature"}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
(1:1)TagLine://1:@feature_tag1,15:@feature_tag2
|
2
|
+
(2:3)TagLine://3:@feature_tag3
|
3
|
+
(3:1)FeatureLine:Feature/Minimal Scenario Outline/
|
4
|
+
(4:1)Empty://
|
5
|
+
(5:1)TagLine://1:@scenario_tag1,16:@scenario_tag2
|
6
|
+
(6:3)TagLine://3:@scenario_tag3
|
7
|
+
(7:1)ScenarioLine:Scenario/minimalistic/
|
8
|
+
(8:5)StepLine:Given /the minimalism/
|
9
|
+
(9:1)Empty://
|
10
|
+
(10:1)TagLine://1:@so_tag1,11:@so_tag2
|
11
|
+
(11:3)TagLine://3:@so_tag3
|
12
|
+
(12:1)ScenarioOutlineLine:Scenario Outline/minimalistic outline/
|
13
|
+
(13:5)StepLine:Given /the <what>/
|
14
|
+
(14:1)Empty://
|
15
|
+
(15:1)TagLine://1:@ex_tag1,10:@ex_tag2
|
16
|
+
(16:3)TagLine://3:@ex_tag3
|
17
|
+
(17:1)ExamplesLine:Examples//
|
18
|
+
(18:3)TableRow://5:what
|
19
|
+
(19:3)TableRow://5:minimalism
|
20
|
+
(20:1)Empty://
|
21
|
+
(21:1)TagLine://1:@ex_tag4,10:@ex_tag5
|
22
|
+
(22:3)TagLine://3:@ex_tag6
|
23
|
+
(23:1)ExamplesLine:Examples//
|
24
|
+
(24:3)TableRow://5:what
|
25
|
+
(25:3)TableRow://5:more minimalism
|
26
|
+
EOF
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gherkin
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gáspár Nagy
|
@@ -10,76 +10,71 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2017-03-16 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: bundler
|
17
17
|
requirement: !ruby/object:Gem::Requirement
|
18
18
|
requirements:
|
19
|
-
- - "
|
19
|
+
- - ">="
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: '
|
21
|
+
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
requirements:
|
26
|
-
- - "
|
26
|
+
- - ">="
|
27
27
|
- !ruby/object:Gem::Version
|
28
|
-
version: '
|
28
|
+
version: '0'
|
29
29
|
- !ruby/object:Gem::Dependency
|
30
30
|
name: rake
|
31
31
|
requirement: !ruby/object:Gem::Requirement
|
32
32
|
requirements:
|
33
33
|
- - "~>"
|
34
34
|
- !ruby/object:Gem::Version
|
35
|
-
version: '10.
|
35
|
+
version: '10.5'
|
36
36
|
type: :development
|
37
37
|
prerelease: false
|
38
38
|
version_requirements: !ruby/object:Gem::Requirement
|
39
39
|
requirements:
|
40
40
|
- - "~>"
|
41
41
|
- !ruby/object:Gem::Version
|
42
|
-
version: '10.
|
42
|
+
version: '10.5'
|
43
43
|
- !ruby/object:Gem::Dependency
|
44
44
|
name: rspec
|
45
45
|
requirement: !ruby/object:Gem::Requirement
|
46
46
|
requirements:
|
47
47
|
- - "~>"
|
48
48
|
- !ruby/object:Gem::Version
|
49
|
-
version: '3.
|
49
|
+
version: '3.5'
|
50
50
|
type: :development
|
51
51
|
prerelease: false
|
52
52
|
version_requirements: !ruby/object:Gem::Requirement
|
53
53
|
requirements:
|
54
54
|
- - "~>"
|
55
55
|
- !ruby/object:Gem::Version
|
56
|
-
version: '3.
|
56
|
+
version: '3.5'
|
57
57
|
- !ruby/object:Gem::Dependency
|
58
58
|
name: coveralls
|
59
59
|
requirement: !ruby/object:Gem::Requirement
|
60
60
|
requirements:
|
61
|
-
- - "
|
61
|
+
- - ">="
|
62
62
|
- !ruby/object:Gem::Version
|
63
|
-
version: '0
|
64
|
-
- - "<"
|
65
|
-
- !ruby/object:Gem::Version
|
66
|
-
version: 0.8.8
|
63
|
+
version: '0'
|
67
64
|
type: :development
|
68
65
|
prerelease: false
|
69
66
|
version_requirements: !ruby/object:Gem::Requirement
|
70
67
|
requirements:
|
71
|
-
- - "
|
72
|
-
- !ruby/object:Gem::Version
|
73
|
-
version: '0.8'
|
74
|
-
- - "<"
|
68
|
+
- - ">="
|
75
69
|
- !ruby/object:Gem::Version
|
76
|
-
version: 0
|
70
|
+
version: '0'
|
77
71
|
description: Gherkin parser
|
78
72
|
email: cukes@googlegroups.com
|
79
73
|
executables: []
|
80
74
|
extensions: []
|
81
75
|
extra_rdoc_files: []
|
82
76
|
files:
|
77
|
+
- ".rsync"
|
83
78
|
- ".travis.yml"
|
84
79
|
- CONTRIBUTING.md
|
85
80
|
- Gemfile
|
@@ -87,10 +82,17 @@ files:
|
|
87
82
|
- Makefile
|
88
83
|
- README.md
|
89
84
|
- Rakefile
|
90
|
-
-
|
91
|
-
-
|
85
|
+
- berp/CommandLine.dll
|
86
|
+
- berp/RazorEngine.dll
|
87
|
+
- berp/RazorEngine.pdb
|
88
|
+
- berp/System.Web.Razor.dll
|
89
|
+
- berp/berp.exe
|
90
|
+
- berp/berp.pdb
|
91
|
+
- bin/gherkin
|
92
92
|
- bin/gherkin-generate-tokens
|
93
|
+
- gherkin-languages.json
|
93
94
|
- gherkin-ruby.razor
|
95
|
+
- gherkin.berp
|
94
96
|
- gherkin.gemspec
|
95
97
|
- lib/gherkin/ast_builder.rb
|
96
98
|
- lib/gherkin/ast_node.rb
|
@@ -100,6 +102,8 @@ files:
|
|
100
102
|
- lib/gherkin/gherkin_line.rb
|
101
103
|
- lib/gherkin/parser.rb
|
102
104
|
- lib/gherkin/pickles/compiler.rb
|
105
|
+
- lib/gherkin/stream/gherkin_events.rb
|
106
|
+
- lib/gherkin/stream/source_events.rb
|
103
107
|
- lib/gherkin/token.rb
|
104
108
|
- lib/gherkin/token_formatter_builder.rb
|
105
109
|
- lib/gherkin/token_matcher.rb
|
@@ -107,7 +111,154 @@ files:
|
|
107
111
|
- spec/capture_warnings.rb
|
108
112
|
- spec/coverage.rb
|
109
113
|
- spec/gherkin/parser_spec.rb
|
110
|
-
|
114
|
+
- testdata/bad/inconsistent_cell_count.feature
|
115
|
+
- testdata/bad/inconsistent_cell_count.feature.errors.ndjson
|
116
|
+
- testdata/bad/invalid_language.feature
|
117
|
+
- testdata/bad/invalid_language.feature.errors.ndjson
|
118
|
+
- testdata/bad/multiple_parser_errors.feature
|
119
|
+
- testdata/bad/multiple_parser_errors.feature.errors.ndjson
|
120
|
+
- testdata/bad/not_gherkin.feature
|
121
|
+
- testdata/bad/not_gherkin.feature.errors.ndjson
|
122
|
+
- testdata/bad/single_parser_error.feature
|
123
|
+
- testdata/bad/single_parser_error.feature.errors.ndjson
|
124
|
+
- testdata/bad/unexpected_eof.feature
|
125
|
+
- testdata/bad/unexpected_eof.feature.errors.ndjson
|
126
|
+
- testdata/good/background.feature
|
127
|
+
- testdata/good/background.feature.ast.ndjson
|
128
|
+
- testdata/good/background.feature.pickles.ndjson
|
129
|
+
- testdata/good/background.feature.source.ndjson
|
130
|
+
- testdata/good/background.feature.tokens
|
131
|
+
- testdata/good/datatables.feature
|
132
|
+
- testdata/good/datatables.feature.ast.ndjson
|
133
|
+
- testdata/good/datatables.feature.pickles.ndjson
|
134
|
+
- testdata/good/datatables.feature.source.ndjson
|
135
|
+
- testdata/good/datatables.feature.tokens
|
136
|
+
- testdata/good/descriptions.feature
|
137
|
+
- testdata/good/descriptions.feature.ast.ndjson
|
138
|
+
- testdata/good/descriptions.feature.pickles.ndjson
|
139
|
+
- testdata/good/descriptions.feature.source.ndjson
|
140
|
+
- testdata/good/descriptions.feature.tokens
|
141
|
+
- testdata/good/docstrings.feature
|
142
|
+
- testdata/good/docstrings.feature.ast.ndjson
|
143
|
+
- testdata/good/docstrings.feature.pickles.ndjson
|
144
|
+
- testdata/good/docstrings.feature.source.ndjson
|
145
|
+
- testdata/good/docstrings.feature.tokens
|
146
|
+
- testdata/good/empty.feature
|
147
|
+
- testdata/good/empty.feature.ast.ndjson
|
148
|
+
- testdata/good/empty.feature.pickles.ndjson
|
149
|
+
- testdata/good/empty.feature.source.ndjson
|
150
|
+
- testdata/good/empty.feature.tokens
|
151
|
+
- testdata/good/escaped_pipes.feature
|
152
|
+
- testdata/good/escaped_pipes.feature.ast.ndjson
|
153
|
+
- testdata/good/escaped_pipes.feature.pickles.ndjson
|
154
|
+
- testdata/good/escaped_pipes.feature.source.ndjson
|
155
|
+
- testdata/good/escaped_pipes.feature.tokens
|
156
|
+
- testdata/good/example_token_multiple.feature
|
157
|
+
- testdata/good/example_token_multiple.feature.ast.ndjson
|
158
|
+
- testdata/good/example_token_multiple.feature.pickles.ndjson
|
159
|
+
- testdata/good/example_token_multiple.feature.source.ndjson
|
160
|
+
- testdata/good/example_token_multiple.feature.tokens
|
161
|
+
- testdata/good/example_tokens_everywhere.feature
|
162
|
+
- testdata/good/example_tokens_everywhere.feature.ast.ndjson
|
163
|
+
- testdata/good/example_tokens_everywhere.feature.pickles.ndjson
|
164
|
+
- testdata/good/example_tokens_everywhere.feature.source.ndjson
|
165
|
+
- testdata/good/example_tokens_everywhere.feature.tokens
|
166
|
+
- testdata/good/i18n_emoji.feature
|
167
|
+
- testdata/good/i18n_emoji.feature.ast.ndjson
|
168
|
+
- testdata/good/i18n_emoji.feature.pickles.ndjson
|
169
|
+
- testdata/good/i18n_emoji.feature.source.ndjson
|
170
|
+
- testdata/good/i18n_emoji.feature.tokens
|
171
|
+
- testdata/good/i18n_fr.feature
|
172
|
+
- testdata/good/i18n_fr.feature.ast.ndjson
|
173
|
+
- testdata/good/i18n_fr.feature.pickles.ndjson
|
174
|
+
- testdata/good/i18n_fr.feature.source.ndjson
|
175
|
+
- testdata/good/i18n_fr.feature.tokens
|
176
|
+
- testdata/good/i18n_no.feature
|
177
|
+
- testdata/good/i18n_no.feature.ast.ndjson
|
178
|
+
- testdata/good/i18n_no.feature.pickles.ndjson
|
179
|
+
- testdata/good/i18n_no.feature.source.ndjson
|
180
|
+
- testdata/good/i18n_no.feature.tokens
|
181
|
+
- testdata/good/incomplete_background_1.feature
|
182
|
+
- testdata/good/incomplete_background_1.feature.ast.ndjson
|
183
|
+
- testdata/good/incomplete_background_1.feature.pickles.ndjson
|
184
|
+
- testdata/good/incomplete_background_1.feature.source.ndjson
|
185
|
+
- testdata/good/incomplete_background_1.feature.tokens
|
186
|
+
- testdata/good/incomplete_background_2.feature
|
187
|
+
- testdata/good/incomplete_background_2.feature.ast.ndjson
|
188
|
+
- testdata/good/incomplete_background_2.feature.pickles.ndjson
|
189
|
+
- testdata/good/incomplete_background_2.feature.source.ndjson
|
190
|
+
- testdata/good/incomplete_background_2.feature.tokens
|
191
|
+
- testdata/good/incomplete_feature_1.feature
|
192
|
+
- testdata/good/incomplete_feature_1.feature.ast.ndjson
|
193
|
+
- testdata/good/incomplete_feature_1.feature.pickles.ndjson
|
194
|
+
- testdata/good/incomplete_feature_1.feature.source.ndjson
|
195
|
+
- testdata/good/incomplete_feature_1.feature.tokens
|
196
|
+
- testdata/good/incomplete_feature_2.feature
|
197
|
+
- testdata/good/incomplete_feature_2.feature.ast.ndjson
|
198
|
+
- testdata/good/incomplete_feature_2.feature.pickles.ndjson
|
199
|
+
- testdata/good/incomplete_feature_2.feature.source.ndjson
|
200
|
+
- testdata/good/incomplete_feature_2.feature.tokens
|
201
|
+
- testdata/good/incomplete_feature_3.feature
|
202
|
+
- testdata/good/incomplete_feature_3.feature.ast.ndjson
|
203
|
+
- testdata/good/incomplete_feature_3.feature.pickles.ndjson
|
204
|
+
- testdata/good/incomplete_feature_3.feature.source.ndjson
|
205
|
+
- testdata/good/incomplete_feature_3.feature.tokens
|
206
|
+
- testdata/good/incomplete_scenario.feature
|
207
|
+
- testdata/good/incomplete_scenario.feature.ast.ndjson
|
208
|
+
- testdata/good/incomplete_scenario.feature.pickles.ndjson
|
209
|
+
- testdata/good/incomplete_scenario.feature.source.ndjson
|
210
|
+
- testdata/good/incomplete_scenario.feature.tokens
|
211
|
+
- testdata/good/incomplete_scenario_outline.feature
|
212
|
+
- testdata/good/incomplete_scenario_outline.feature.ast.ndjson
|
213
|
+
- testdata/good/incomplete_scenario_outline.feature.pickles.ndjson
|
214
|
+
- testdata/good/incomplete_scenario_outline.feature.source.ndjson
|
215
|
+
- testdata/good/incomplete_scenario_outline.feature.tokens
|
216
|
+
- testdata/good/language.feature
|
217
|
+
- testdata/good/language.feature.ast.ndjson
|
218
|
+
- testdata/good/language.feature.pickles.ndjson
|
219
|
+
- testdata/good/language.feature.source.ndjson
|
220
|
+
- testdata/good/language.feature.tokens
|
221
|
+
- testdata/good/minimal.feature
|
222
|
+
- testdata/good/minimal.feature.ast.ndjson
|
223
|
+
- testdata/good/minimal.feature.pickles.ndjson
|
224
|
+
- testdata/good/minimal.feature.source.ndjson
|
225
|
+
- testdata/good/minimal.feature.tokens
|
226
|
+
- testdata/good/readme_example.feature
|
227
|
+
- testdata/good/readme_example.feature.ast.ndjson
|
228
|
+
- testdata/good/readme_example.feature.pickles.ndjson
|
229
|
+
- testdata/good/readme_example.feature.source.ndjson
|
230
|
+
- testdata/good/readme_example.feature.tokens
|
231
|
+
- testdata/good/scenario_outline.feature
|
232
|
+
- testdata/good/scenario_outline.feature.ast.ndjson
|
233
|
+
- testdata/good/scenario_outline.feature.pickles.ndjson
|
234
|
+
- testdata/good/scenario_outline.feature.source.ndjson
|
235
|
+
- testdata/good/scenario_outline.feature.tokens
|
236
|
+
- testdata/good/scenario_outline_no_newline.feature
|
237
|
+
- testdata/good/scenario_outline_no_newline.feature.ast.ndjson
|
238
|
+
- testdata/good/scenario_outline_no_newline.feature.pickles.ndjson
|
239
|
+
- testdata/good/scenario_outline_no_newline.feature.source.ndjson
|
240
|
+
- testdata/good/scenario_outline_no_newline.feature.tokens
|
241
|
+
- testdata/good/scenario_outlines_with_tags.feature
|
242
|
+
- testdata/good/scenario_outlines_with_tags.feature.ast.ndjson
|
243
|
+
- testdata/good/scenario_outlines_with_tags.feature.pickles.ndjson
|
244
|
+
- testdata/good/scenario_outlines_with_tags.feature.source.ndjson
|
245
|
+
- testdata/good/scenario_outlines_with_tags.feature.tokens
|
246
|
+
- testdata/good/several_examples.feature
|
247
|
+
- testdata/good/several_examples.feature.ast.ndjson
|
248
|
+
- testdata/good/several_examples.feature.pickles.ndjson
|
249
|
+
- testdata/good/several_examples.feature.source.ndjson
|
250
|
+
- testdata/good/several_examples.feature.tokens
|
251
|
+
- testdata/good/spaces_in_language.feature
|
252
|
+
- testdata/good/spaces_in_language.feature.ast.ndjson
|
253
|
+
- testdata/good/spaces_in_language.feature.pickles.ndjson
|
254
|
+
- testdata/good/spaces_in_language.feature.source.ndjson
|
255
|
+
- testdata/good/spaces_in_language.feature.tokens
|
256
|
+
- testdata/good/tags.feature
|
257
|
+
- testdata/good/tags.feature.ast.ndjson
|
258
|
+
- testdata/good/tags.feature.pickles.ndjson
|
259
|
+
- testdata/good/tags.feature.source.ndjson
|
260
|
+
- testdata/good/tags.feature.tokens
|
261
|
+
homepage: https://github.com/cucumber/gherkin-ruby
|
111
262
|
licenses:
|
112
263
|
- MIT
|
113
264
|
metadata: {}
|
@@ -128,10 +279,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
128
279
|
version: '0'
|
129
280
|
requirements: []
|
130
281
|
rubyforge_project:
|
131
|
-
rubygems_version: 2.
|
282
|
+
rubygems_version: 2.5.2
|
132
283
|
signing_key:
|
133
284
|
specification_version: 4
|
134
|
-
summary: gherkin-4.
|
285
|
+
summary: gherkin-4.1.0
|
135
286
|
test_files:
|
136
287
|
- spec/capture_warnings.rb
|
137
288
|
- spec/coverage.rb
|