cuke_modeler 1.2.1 → 1.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.simplecov +1 -2
- data/.travis.yml +4 -3
- data/Gemfile +1 -1
- data/History.md +5 -0
- data/README.md +2 -1
- data/Rakefile +19 -0
- data/appveyor.yml +19 -18
- data/cuke_modeler.gemspec +1 -1
- data/lib/cuke_modeler/adapters/gherkin_4_adapter.rb +1 -1
- data/lib/cuke_modeler/parsing.rb +1 -1
- data/lib/cuke_modeler/version.rb +1 -1
- data/testing/cucumber/features/analysis/test_comparison.feature +1 -4
- data/testing/cucumber/features/modeling/background_modeling.feature +1 -2
- data/testing/cucumber/features/modeling/background_output.feature +1 -2
- data/testing/cucumber/features/modeling/cell_modeling.feature +1 -2
- data/testing/cucumber/features/modeling/comment_modeling.feature +1 -2
- data/testing/cucumber/features/modeling/comment_output.feature +1 -2
- data/testing/cucumber/features/modeling/directory_modeling.feature +1 -4
- data/testing/cucumber/features/modeling/directory_output.feature +1 -2
- data/testing/cucumber/features/modeling/doc_string_modeling.feature +1 -3
- data/testing/cucumber/features/modeling/doc_string_output.feature +1 -2
- data/testing/cucumber/features/modeling/example_modeling.feature +1 -3
- data/testing/cucumber/features/modeling/example_output.feature +1 -2
- data/testing/cucumber/features/modeling/feature_file_modeling.feature +1 -3
- data/testing/cucumber/features/modeling/feature_file_output.feature +1 -2
- data/testing/cucumber/features/modeling/feature_modeling.feature +2 -5
- data/testing/cucumber/features/modeling/feature_output.feature +1 -2
- data/testing/cucumber/features/modeling/model_output.feature +1 -3
- data/testing/cucumber/features/modeling/model_structure.feature +3 -9
- data/testing/cucumber/features/modeling/outline_modeling.feature +1 -2
- data/testing/cucumber/features/modeling/outline_output.feature +1 -2
- data/testing/cucumber/features/modeling/row_modeling.feature +1 -2
- data/testing/cucumber/features/modeling/row_output.feature +1 -2
- data/testing/cucumber/features/modeling/scenario_modeling.feature +1 -2
- data/testing/cucumber/features/modeling/scenario_output.feature +1 -2
- data/testing/cucumber/features/modeling/step_modeling.feature +1 -2
- data/testing/cucumber/features/modeling/step_output.feature +1 -2
- data/testing/cucumber/features/modeling/table_modeling.feature +1 -2
- data/testing/cucumber/features/modeling/table_output.feature +1 -2
- data/testing/cucumber/features/modeling/tag_modeling.feature +1 -2
- data/testing/cucumber/features/modeling/tag_output.feature +1 -2
- data/testing/cucumber/step_definitions/directory_steps.rb +1 -1
- data/testing/cucumber/step_definitions/feature_file_steps.rb +1 -1
- data/testing/cucumber/step_definitions/modeling_steps.rb +1 -1
- data/testing/cucumber/step_definitions/setup_steps.rb +4 -6
- data/testing/cucumber/step_definitions/verification_steps.rb +3 -3
- data/testing/cucumber/support/env.rb +7 -14
- data/testing/file_helper.rb +44 -0
- data/testing/gemfiles/gherkin5.gemfile +20 -0
- data/testing/rspec/spec/integration/background_integration_spec.rb +17 -15
- data/testing/rspec/spec/integration/cell_integration_spec.rb +69 -79
- data/testing/rspec/spec/integration/comment_integration_spec.rb +16 -15
- data/testing/rspec/spec/integration/directory_integration_spec.rb +46 -55
- data/testing/rspec/spec/integration/doc_string_integration_spec.rb +73 -80
- data/testing/rspec/spec/integration/example_integration_spec.rb +53 -36
- data/testing/rspec/spec/integration/feature_file_integration_spec.rb +27 -42
- data/testing/rspec/spec/integration/feature_integration_spec.rb +12 -11
- data/testing/rspec/spec/integration/gherkin_2_adapter_spec.rb +14 -16
- data/testing/rspec/spec/integration/gherkin_3_adapter_spec.rb +14 -16
- data/testing/rspec/spec/integration/gherkin_4_adapter_spec.rb +14 -16
- data/testing/rspec/spec/integration/outline_integration_spec.rb +20 -18
- data/testing/rspec/spec/integration/parsing_integration_spec.rb +1 -1
- data/testing/rspec/spec/integration/row_integration_spec.rb +57 -64
- data/testing/rspec/spec/integration/scenario_integration_spec.rb +17 -15
- data/testing/rspec/spec/integration/step_integration_spec.rb +48 -55
- data/testing/rspec/spec/integration/table_integration_spec.rb +54 -61
- data/testing/rspec/spec/integration/tag_integration_spec.rb +61 -67
- data/testing/rspec/spec/spec_helper.rb +5 -16
- data/testing/rspec/spec/unit/background_unit_spec.rb +0 -5
- data/testing/rspec/spec/unit/cell_unit_spec.rb +0 -5
- data/testing/rspec/spec/unit/comment_unit_spec.rb +0 -6
- data/testing/rspec/spec/unit/directory_unit_spec.rb +0 -5
- data/testing/rspec/spec/unit/doc_string_unit_spec.rb +0 -5
- data/testing/rspec/spec/unit/example_unit_spec.rb +0 -5
- data/testing/rspec/spec/unit/feature_file_unit_spec.rb +0 -5
- data/testing/rspec/spec/unit/feature_unit_spec.rb +0 -5
- data/testing/rspec/spec/unit/outline_unit_spec.rb +0 -5
- data/testing/rspec/spec/unit/row_unit_spec.rb +0 -5
- data/testing/rspec/spec/unit/scenario_unit_spec.rb +0 -5
- data/testing/rspec/spec/unit/shared/stringifiable_models_unit_specs.rb +1 -1
- data/testing/rspec/spec/unit/step_unit_spec.rb +0 -5
- data/testing/rspec/spec/unit/table_unit_spec.rb +0 -5
- data/testing/rspec/spec/unit/tag_unit_spec.rb +0 -5
- data/todo.txt +0 -4
- metadata +6 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6f6ce507c3e4cce81b178759608f8421995acb33
|
4
|
+
data.tar.gz: 28e38d785382112db34e4bd8ad21c2ab2d520fb2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6468b515b7f55540cf96319c3862ef04d7560b583294a694c71a3077becc915516465dec013e414c24d05b6fe8cfa0ef37844b4eab23dc1f62068b876b0fa17c
|
7
|
+
data.tar.gz: c636a5d624e5ad31be581134f0429bf63cd2d52bbef6a0278c5484ac8a2d0e18519e0d372051d5de44f4a012959dd7d93801559eda4f693e44247b779dd0c210
|
data/.simplecov
CHANGED
data/.travis.yml
CHANGED
@@ -6,9 +6,6 @@ language: ruby
|
|
6
6
|
rvm:
|
7
7
|
- 1.8.7
|
8
8
|
- 1.9.3
|
9
|
-
- 2.0.0
|
10
|
-
- 2.1.6
|
11
|
-
- 2.2.2
|
12
9
|
- 2.3.3
|
13
10
|
- 2.4.0
|
14
11
|
- jruby-9.1.7.0
|
@@ -17,6 +14,7 @@ gemfile:
|
|
17
14
|
- testing/gemfiles/gherkin2.gemfile
|
18
15
|
- testing/gemfiles/gherkin3.gemfile
|
19
16
|
- testing/gemfiles/gherkin4.gemfile
|
17
|
+
- testing/gemfiles/gherkin5.gemfile
|
20
18
|
|
21
19
|
matrix:
|
22
20
|
exclude:
|
@@ -26,6 +24,9 @@ matrix:
|
|
26
24
|
# gherkin 4.x does not work with Ruby 1.8.x
|
27
25
|
- rvm: 1.8.7
|
28
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
|
29
30
|
# Travis does not provide 1.8.7 on OSX
|
30
31
|
- rvm: 1.8.7
|
31
32
|
os: osx
|
data/Gemfile
CHANGED
data/History.md
CHANGED
data/README.md
CHANGED
@@ -3,7 +3,8 @@
|
|
3
3
|
[![Build Status](https://travis-ci.org/enkessler/cuke_modeler.svg?branch=dev)](https://travis-ci.org/enkessler/cuke_modeler)
|
4
4
|
[![Build status](https://ci.appveyor.com/api/projects/status/is8xqvoqn3pjh9l0/branch/dev?svg=true)](https://ci.appveyor.com/project/enkessler/cuke-modeler/branch/dev)
|
5
5
|
[![Coverage Status](https://coveralls.io/repos/github/enkessler/cuke_modeler/badge.svg?branch=dev)](https://coveralls.io/github/enkessler/cuke_modeler?branch=dev)
|
6
|
-
[![
|
6
|
+
[![Code Quality](https://codeclimate.com/github/enkessler/cuke_modeler/badges/gpa.svg)](https://codeclimate.com/github/enkessler/cuke_modeler)
|
7
|
+
[![Project License](https://img.shields.io/badge/license-MIT-blue.svg)](https://opensource.org/licenses/mit-license.php)
|
7
8
|
|
8
9
|
|
9
10
|
# CukeModeler
|
data/Rakefile
CHANGED
@@ -31,6 +31,25 @@ namespace 'cuke_modeler' do
|
|
31
31
|
Rake::Task['cuke_modeler:test_everything'].invoke(rspec_args, cucumber_args)
|
32
32
|
end
|
33
33
|
|
34
|
+
|
35
|
+
# The task used to publish the current feature file documentation to Relish
|
36
|
+
desc 'Publish feature files to Relish'
|
37
|
+
task :publish_features do
|
38
|
+
# Get existing versions
|
39
|
+
this_dir = File.dirname(__FILE__)
|
40
|
+
output = `relish versions enkessler/CukeModeler`
|
41
|
+
|
42
|
+
# Add the current version if it doesn't exist
|
43
|
+
unless output =~ /#{Regexp.escape(CukeModeler::VERSION)}/
|
44
|
+
output = `relish versions:add enkessler/CukeModeler:#{CukeModeler::VERSION}`
|
45
|
+
puts output
|
46
|
+
end
|
47
|
+
|
48
|
+
# Publish the features
|
49
|
+
output = `relish push enkessler/CukeModeler:#{CukeModeler::VERSION} path #{this_dir}/testing/cucumber`
|
50
|
+
puts output
|
51
|
+
end
|
52
|
+
|
34
53
|
end
|
35
54
|
|
36
55
|
|
data/appveyor.yml
CHANGED
@@ -2,35 +2,36 @@ version: '1.0.{build}'
|
|
2
2
|
|
3
3
|
environment:
|
4
4
|
matrix:
|
5
|
-
- RUBY_VERSION:
|
5
|
+
- RUBY_VERSION: 193
|
6
6
|
BUNDLE_GEMFILE: testing/gemfiles/gherkin2.gemfile
|
7
|
-
|
8
|
-
|
9
|
-
- RUBY_VERSION:
|
10
|
-
BUNDLE_GEMFILE: testing/gemfiles/gherkin2.gemfile
|
11
|
-
- RUBY_VERSION: 21-x64
|
12
|
-
BUNDLE_GEMFILE: testing/gemfiles/gherkin2.gemfile
|
13
|
-
- RUBY_VERSION: 22-x64
|
7
|
+
# AppVeyor does not have a 64-bit Ruby 1.9.3
|
8
|
+
# Gherkin 2.x does not appear to support 32-bit Ruby 2.x and it's not worth it to investigate if this is true or not
|
9
|
+
- RUBY_VERSION: 23-x64
|
14
10
|
BUNDLE_GEMFILE: testing/gemfiles/gherkin2.gemfile
|
15
11
|
|
16
|
-
- RUBY_VERSION: 193
|
12
|
+
- RUBY_VERSION: 193
|
17
13
|
BUNDLE_GEMFILE: testing/gemfiles/gherkin3.gemfile
|
18
|
-
|
14
|
+
# AppVeyor does not have a 64-bit Ruby 1.9.3
|
15
|
+
- RUBY_VERSION: 23
|
19
16
|
BUNDLE_GEMFILE: testing/gemfiles/gherkin3.gemfile
|
20
|
-
- RUBY_VERSION:
|
21
|
-
BUNDLE_GEMFILE: testing/gemfiles/gherkin3.gemfile
|
22
|
-
- RUBY_VERSION: 22-x64
|
17
|
+
- RUBY_VERSION: 23-x64
|
23
18
|
BUNDLE_GEMFILE: testing/gemfiles/gherkin3.gemfile
|
24
19
|
|
25
|
-
- RUBY_VERSION: 193
|
26
|
-
BUNDLE_GEMFILE: testing/gemfiles/gherkin4.gemfile
|
27
|
-
- RUBY_VERSION: 200-x64
|
20
|
+
- RUBY_VERSION: 193
|
28
21
|
BUNDLE_GEMFILE: testing/gemfiles/gherkin4.gemfile
|
29
|
-
|
22
|
+
# AppVeyor does not have a 64-bit Ruby 1.9.3
|
23
|
+
- RUBY_VERSION: 23
|
30
24
|
BUNDLE_GEMFILE: testing/gemfiles/gherkin4.gemfile
|
31
|
-
- RUBY_VERSION:
|
25
|
+
- RUBY_VERSION: 23-x64
|
32
26
|
BUNDLE_GEMFILE: testing/gemfiles/gherkin4.gemfile
|
33
27
|
|
28
|
+
- RUBY_VERSION: 193
|
29
|
+
BUNDLE_GEMFILE: testing/gemfiles/gherkin5.gemfile
|
30
|
+
# AppVeyor does not have a 64-bit Ruby 1.9.3
|
31
|
+
- RUBY_VERSION: 23
|
32
|
+
BUNDLE_GEMFILE: testing/gemfiles/gherkin5.gemfile
|
33
|
+
- RUBY_VERSION: 23-x64
|
34
|
+
BUNDLE_GEMFILE: testing/gemfiles/gherkin5.gemfile
|
34
35
|
|
35
36
|
install:
|
36
37
|
- set PATH=C:\Ruby%RUBY_VERSION%\bin;%PATH%
|
data/cuke_modeler.gemspec
CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
|
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
19
|
spec.require_paths = ["lib"]
|
20
20
|
|
21
|
-
spec.add_runtime_dependency 'gherkin', '<
|
21
|
+
spec.add_runtime_dependency 'gherkin', '< 6.0'
|
22
22
|
spec.add_runtime_dependency('json', '>= 1.0', '< 3.0')
|
23
23
|
spec.add_runtime_dependency('multi_json', '~> 1.0')
|
24
24
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
module CukeModeler
|
2
2
|
|
3
|
-
# An adapter that can convert the output of version 4.x of the *gherkin* gem into input that is consumable by this gem.
|
3
|
+
# An adapter that can convert the output of version 4.x and 5.x of the *gherkin* gem into input that is consumable by this gem.
|
4
4
|
|
5
5
|
class Gherkin4Adapter
|
6
6
|
|
data/lib/cuke_modeler/parsing.rb
CHANGED
@@ -19,7 +19,7 @@ module CukeModeler
|
|
19
19
|
# will be done with an 'adapter' appropriate to the version of the *gherkin* gem that has been activated.
|
20
20
|
|
21
21
|
case Gem.loaded_specs['gherkin'].version.version
|
22
|
-
when /^
|
22
|
+
when /^[54]\./
|
23
23
|
require 'gherkin/parser'
|
24
24
|
require 'cuke_modeler/adapters/gherkin_4_adapter'
|
25
25
|
|
data/lib/cuke_modeler/version.rb
CHANGED
@@ -1,9 +1,6 @@
|
|
1
1
|
Feature: Test comparison
|
2
2
|
|
3
|
-
Gherkin elements that contain steps (i.e. backgrounds, scenarios, and outlines) can be compared with one another
|
4
|
-
in order to determine equality. Elements are considered equal if the base text of their steps match. That is, the
|
5
|
-
keyword used for the step and any table or doc string that may be associated with that step are ignored for the
|
6
|
-
purposes of comparison.
|
3
|
+
Gherkin elements that contain steps (i.e. backgrounds, scenarios, and outlines) can be compared with one another in order to determine equality. Elements are considered equal if the base text of their steps match. That is, the keyword used for the step and any table or doc string that may be associated with that step are ignored for the purposes of comparison.
|
7
4
|
|
8
5
|
|
9
6
|
Scenario: Comparing tests
|
@@ -1,7 +1,6 @@
|
|
1
1
|
Feature: Background modeling
|
2
2
|
|
3
|
-
Background models represent the Background portion of a feature. They expose several attributes of the background
|
4
|
-
that they represent, as well as containing models for the steps that are present in that background.
|
3
|
+
Background models represent the Background portion of a feature. They expose several attributes of the background that they represent, as well as containing models for the steps that are present in that background.
|
5
4
|
|
6
5
|
|
7
6
|
Background:
|
@@ -1,7 +1,6 @@
|
|
1
1
|
Feature: Background output
|
2
2
|
|
3
|
-
A background model's string output is a Gherkin representation of itself. As such, output from a background model can be used as
|
4
|
-
input for the same kind of model.
|
3
|
+
A background model's string output is a Gherkin representation of itself. As such, output from a background model can be used as input for the same kind of model.
|
5
4
|
|
6
5
|
|
7
6
|
Scenario: Outputting a background model
|
@@ -1,7 +1,6 @@
|
|
1
1
|
Feature: Cell modeling
|
2
2
|
|
3
|
-
Cell models represent an individual cell in a table row (either a step table or an example table). They expose
|
4
|
-
several attributes of the cell that they represent.
|
3
|
+
Cell models represent an individual cell in a table row (either a step table or an example table). They expose several attributes of the cell that they represent.
|
5
4
|
|
6
5
|
|
7
6
|
Background:
|
@@ -1,7 +1,6 @@
|
|
1
1
|
Feature: Comment modeling
|
2
2
|
|
3
|
-
Comment models represent a comment portion of a feature. They expose several attributes of the comment
|
4
|
-
that they represent.
|
3
|
+
Comment models represent a comment portion of a feature. They expose several attributes of the comment that they represent.
|
5
4
|
|
6
5
|
|
7
6
|
Background:
|
@@ -1,7 +1,6 @@
|
|
1
1
|
Feature: Comment output
|
2
2
|
|
3
|
-
A comment model's string output is a Gherkin representation of itself. As such, output from a comment model can be used as
|
4
|
-
input for the same kind of model.
|
3
|
+
A comment model's string output is a Gherkin representation of itself. As such, output from a comment model can be used as input for the same kind of model.
|
5
4
|
|
6
5
|
|
7
6
|
Scenario: Outputting a comment model
|
@@ -1,9 +1,6 @@
|
|
1
1
|
Feature: Directory modeling
|
2
2
|
|
3
|
-
|
4
|
-
Directory models are the top level element of a model tree. They expose several attributes of the directory that they
|
5
|
-
represent, as well as containing models for any feature files or subdirectories that are present in the directory
|
6
|
-
that they represent.
|
3
|
+
Directory models are the top level element of a model tree. They expose several attributes of the directory that they represent, as well as containing models for any feature files or subdirectories that are present in the directory that they represent.
|
7
4
|
|
8
5
|
|
9
6
|
Background: An existing test suite
|
@@ -1,7 +1,6 @@
|
|
1
1
|
Feature: Directory output
|
2
2
|
|
3
|
-
A directory model's string output is simply the file path of the directory that it models. As such, output from a directory model can be used as
|
4
|
-
input for the same kind of model.
|
3
|
+
A directory model's string output is simply the file path of the directory that it models. As such, output from a directory model can be used as input for the same kind of model.
|
5
4
|
|
6
5
|
|
7
6
|
Scenario: Outputting a directory model
|
@@ -1,8 +1,6 @@
|
|
1
1
|
Feature: Doc string modeling
|
2
2
|
|
3
|
-
|
4
|
-
Doc string models represent the doc string argument to a step. They expose several attributes of the doc string
|
5
|
-
that they represent.
|
3
|
+
Doc string models represent the doc string argument to a step. They expose several attributes of the doc string that they represent.
|
6
4
|
|
7
5
|
|
8
6
|
Background:
|
@@ -1,7 +1,6 @@
|
|
1
1
|
Feature: Doc string output
|
2
2
|
|
3
|
-
A doc string model's string output is a Gherkin representation of itself. As such, output from a doc string model can be used as
|
4
|
-
input for the same kind of model.
|
3
|
+
A doc string model's string output is a Gherkin representation of itself. As such, output from a doc string model can be used as input for the same kind of model.
|
5
4
|
|
6
5
|
|
7
6
|
Scenario: Outputting a doc string model
|
@@ -1,8 +1,6 @@
|
|
1
1
|
Feature: Example modeling
|
2
2
|
|
3
|
-
Example models represent an example table of a Scenario Outline portion of a feature. They expose
|
4
|
-
several attributes of the example that they represent, as well as containing models for the example
|
5
|
-
rows and tags that are present in that example.
|
3
|
+
Example models represent an example table of a Scenario Outline portion of a feature. They expose several attributes of the example that they represent, as well as containing models for the example rows and tags that are present in that example.
|
6
4
|
|
7
5
|
|
8
6
|
Background:
|
@@ -1,7 +1,6 @@
|
|
1
1
|
Feature: Example output
|
2
2
|
|
3
|
-
An example model's string output is a Gherkin representation of itself. As such, output from an example model can be used as
|
4
|
-
input for the same kind of model.
|
3
|
+
An example model's string output is a Gherkin representation of itself. As such, output from an example model can be used as input for the same kind of model.
|
5
4
|
|
6
5
|
|
7
6
|
Scenario: Outputting an example model
|
@@ -1,8 +1,6 @@
|
|
1
1
|
Feature: Feature file modeling
|
2
2
|
|
3
|
-
|
4
|
-
Feature file models represent a single .feature file in a test suite. They expose several attributes of the
|
5
|
-
feature file that they represent, as well as containing the model for the feature that is present in that file.
|
3
|
+
Feature file models represent a single .feature file in a test suite. They expose several attributes of the feature file that they represent, as well as containing the model for the feature that is present in that file.
|
6
4
|
|
7
5
|
|
8
6
|
Background: An existing feature file
|
@@ -1,7 +1,6 @@
|
|
1
1
|
Feature: Feature file output
|
2
2
|
|
3
|
-
A feature file model's string output is simply the file path of the feature file that it models. As such, output from a feature file model can be used as
|
4
|
-
input for the same kind of model.
|
3
|
+
A feature file model's string output is simply the file path of the feature file that it models. As such, output from a feature file model can be used as input for the same kind of model.
|
5
4
|
|
6
5
|
|
7
6
|
Scenario: Outputting a feature file model
|
@@ -1,8 +1,6 @@
|
|
1
1
|
Feature: Feature modeling
|
2
2
|
|
3
|
-
Feature models are the top level element of the gherkin portion of the model tree. They expose several attributes of
|
4
|
-
the feature that they represent, as well as containing models for any background, scenarios, or outlines that are
|
5
|
-
present in that feature.
|
3
|
+
Feature models are the top level element of the gherkin portion of the model tree. They expose several attributes of the feature that they represent, as well as containing models for any background, scenarios, or outlines that are present in that feature.
|
6
4
|
|
7
5
|
|
8
6
|
Background:
|
@@ -97,8 +95,7 @@ present in that feature.
|
|
97
95
|
|
98
96
|
Scenario: Modeling a feature's tags
|
99
97
|
|
100
|
-
Note: Although a feature does not inherit tags from anything else, they can still
|
101
|
-
be requested in the same manner as other models that have tags.
|
98
|
+
Note: Although a feature does not inherit tags from anything else, they can still be requested in the same manner as other models that have tags.
|
102
99
|
|
103
100
|
When the feature's tags are requested
|
104
101
|
"""
|
@@ -1,7 +1,6 @@
|
|
1
1
|
Feature: Feature output
|
2
2
|
|
3
|
-
A feature model's string output is a Gherkin representation of itself. As such, output from a feature model can be used as
|
4
|
-
input for the same kind of model.
|
3
|
+
A feature model's string output is a Gherkin representation of itself. As such, output from a feature model can be used as input for the same kind of model.
|
5
4
|
|
6
5
|
|
7
6
|
Scenario: Outputting a feature model
|
@@ -1,8 +1,6 @@
|
|
1
1
|
Feature: Model output
|
2
2
|
|
3
|
-
All models can be output in text form. For models that represent parts of the file structure, this text
|
4
|
-
will be a path and for models that represent parts of a feature file, this text will be Gherkin (see the
|
5
|
-
model output documentation for specific models for details).
|
3
|
+
All models can be output in text form. For models that represent parts of the file structure, this text will be a path and for models that represent parts of a feature file, this text will be Gherkin (see the model output documentation for specific models for details).
|
6
4
|
|
7
5
|
|
8
6
|
Scenario: Outputting a model
|
@@ -1,13 +1,8 @@
|
|
1
1
|
Feature: Model structure
|
2
2
|
|
3
|
-
When modeling an existing test suite, that suite is parsed and models are created for each element of the
|
4
|
-
suite. These models form a nested structure of parent and child models which has the same shape as whatever
|
5
|
-
portion of the suite that they represent (see the documentation for specific models for details).
|
3
|
+
When modeling an existing test suite, that suite is parsed and models are created for each element of the suite. These models form a nested structure of parent and child models which has the same shape as whatever portion of the suite that they represent (see the documentation for specific models for details).
|
6
4
|
|
7
|
-
However, all models can also be used in an 'abstract' manner. That is, they can be created without any input
|
8
|
-
(such as a file path or snippet of Gherkin) that would normally be used for determining their structure and
|
9
|
-
properties. In these cases, their parent/child relationships and properties can be set directly rather than
|
10
|
-
being populated dynamically based on an actual test suite.
|
5
|
+
However, all models can also be used in an 'abstract' manner. That is, they can be created without any input (such as a file path or snippet of Gherkin) that would normally be used for determining their structure and properties. In these cases, their parent/child relationships and properties can be set directly rather than being populated dynamically based on an actual test suite.
|
11
6
|
|
12
7
|
|
13
8
|
Scenario: Creating abstract models
|
@@ -36,8 +31,7 @@ being populated dynamically based on an actual test suite.
|
|
36
31
|
|
37
32
|
Scenario: Accessing the parsing data
|
38
33
|
|
39
|
-
Note: Directory models do not store any parsing data because parsing Gherkin source text
|
40
|
-
does not come into play until the feature file level of modeling.
|
34
|
+
Note: Directory models do not store any parsing data because parsing Gherkin source text does not come into play until the feature file level of modeling.
|
41
35
|
|
42
36
|
Given the models provided by CukeModeler
|
43
37
|
Then all of them provide access to the parsing data that was used to create them
|
@@ -1,7 +1,6 @@
|
|
1
1
|
Feature: Outline modeling
|
2
2
|
|
3
|
-
Outline models represent a Scenario Outline portion of a feature. They expose several attributes of the outline
|
4
|
-
that they represent, as well as containing models for the steps, tags, and examples that are present in that outline.
|
3
|
+
Outline models represent a Scenario Outline portion of a feature. They expose several attributes of the outline that they represent, as well as containing models for the steps, tags, and examples that are present in that outline.
|
5
4
|
|
6
5
|
|
7
6
|
Background:
|
@@ -1,7 +1,6 @@
|
|
1
1
|
Feature: Outline output
|
2
2
|
|
3
|
-
An outline model's string output is a Gherkin representation of itself. As such, output from an outline model can be used as
|
4
|
-
input for the same kind of model.
|
3
|
+
An outline model's string output is a Gherkin representation of itself. As such, output from an outline model can be used as input for the same kind of model.
|
5
4
|
|
6
5
|
|
7
6
|
Scenario: Outputting an outline model
|
@@ -1,7 +1,6 @@
|
|
1
1
|
Feature: Row modeling
|
2
2
|
|
3
|
-
Row models represent an individual row in a step or example table. They expose several attributes of the row
|
4
|
-
that they represent.
|
3
|
+
Row models represent an individual row in a step or example table. They expose several attributes of the row that they represent.
|
5
4
|
|
6
5
|
|
7
6
|
Background:
|