cuke_linter 0.13.0 → 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.
Files changed (91) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +9 -1
  3. data/README.md +4 -4
  4. data/cuke_linter.gemspec +3 -3
  5. data/lib/cuke_linter.rb +5 -3
  6. data/lib/cuke_linter/version.rb +1 -1
  7. metadata +2 -86
  8. data/.gitignore +0 -19
  9. data/.simplecov +0 -8
  10. data/.travis.yml +0 -33
  11. data/CONTRIBUTING.md +0 -26
  12. data/Gemfile +0 -6
  13. data/Rakefile +0 -63
  14. data/appveyor.yml +0 -43
  15. data/bin/console +0 -14
  16. data/bin/setup +0 -8
  17. data/environments/common_env.rb +0 -12
  18. data/environments/cucumber_env.rb +0 -22
  19. data/environments/rspec_env.rb +0 -50
  20. data/testing/cucumber/step_definitions/action_steps.rb +0 -84
  21. data/testing/cucumber/step_definitions/setup_steps.rb +0 -258
  22. data/testing/cucumber/step_definitions/verification_steps.rb +0 -94
  23. data/testing/file_helper.rb +0 -41
  24. data/testing/formatter_factory.rb +0 -15
  25. data/testing/gemfiles/cuke_modeler1.gemfile +0 -8
  26. data/testing/gemfiles/cuke_modeler2.gemfile +0 -8
  27. data/testing/linter_factory.rb +0 -60
  28. data/testing/model_factory.rb +0 -109
  29. data/testing/rspec/spec/integration/cli_integration_spec.rb +0 -556
  30. data/testing/rspec/spec/integration/configuration_spec.rb +0 -811
  31. data/testing/rspec/spec/integration/cuke_linter_integration_spec.rb +0 -243
  32. data/testing/rspec/spec/integration/formatters/formatter_integration_specs.rb +0 -5
  33. data/testing/rspec/spec/integration/formatters/pretty_formatter_integration_spec.rb +0 -8
  34. data/testing/rspec/spec/integration/linters/background_does_more_than_setup_linter_integration_spec.rb +0 -8
  35. data/testing/rspec/spec/integration/linters/element_with_common_tags_linter_integration_spec.rb +0 -8
  36. data/testing/rspec/spec/integration/linters/element_with_duplicate_tags_linter_integration_spec.rb +0 -8
  37. data/testing/rspec/spec/integration/linters/element_with_too_many_tags_linter_integration_spec.rb +0 -8
  38. data/testing/rspec/spec/integration/linters/example_without_name_linter_integration_spec.rb +0 -8
  39. data/testing/rspec/spec/integration/linters/feature_file_with_invalid_name_integration_spec.rb +0 -8
  40. data/testing/rspec/spec/integration/linters/feature_file_with_mismatched_name_integration_spec.rb +0 -8
  41. data/testing/rspec/spec/integration/linters/feature_with_too_many_different_tags_linter_integration_spec.rb +0 -8
  42. data/testing/rspec/spec/integration/linters/feature_without_description_linter_integration_spec.rb +0 -8
  43. data/testing/rspec/spec/integration/linters/feature_without_name_linter_integration_spec.rb +0 -8
  44. data/testing/rspec/spec/integration/linters/feature_without_scenarios_linter_integration_spec.rb +0 -8
  45. data/testing/rspec/spec/integration/linters/linter_integration_spec.rb +0 -8
  46. data/testing/rspec/spec/integration/linters/linter_integration_specs.rb +0 -7
  47. data/testing/rspec/spec/integration/linters/outline_with_single_example_row_linter_integration_spec.rb +0 -8
  48. data/testing/rspec/spec/integration/linters/single_test_background_linter_integration_spec.rb +0 -8
  49. data/testing/rspec/spec/integration/linters/step_with_end_period_linter_integration_spec.rb +0 -8
  50. data/testing/rspec/spec/integration/linters/step_with_too_many_characters_linter_integration_spec.rb +0 -8
  51. data/testing/rspec/spec/integration/linters/test_should_use_background_linter_integration_spec.rb +0 -8
  52. data/testing/rspec/spec/integration/linters/test_with_action_step_as_final_step_linter_integration_spec.rb +0 -8
  53. data/testing/rspec/spec/integration/linters/test_with_bad_name_integration_spec.rb +0 -8
  54. data/testing/rspec/spec/integration/linters/test_with_no_action_step_integration_spec.rb +0 -8
  55. data/testing/rspec/spec/integration/linters/test_with_no_name_integration_spec.rb +0 -8
  56. data/testing/rspec/spec/integration/linters/test_with_no_verification_step_integration_spec.rb +0 -8
  57. data/testing/rspec/spec/integration/linters/test_with_setup_step_after_action_step_linter_integration_spec.rb +0 -8
  58. data/testing/rspec/spec/integration/linters/test_with_setup_step_after_verification_step_linter_integration_spec.rb +0 -8
  59. data/testing/rspec/spec/integration/linters/test_with_setup_step_as_final_step_linter_integration_spec.rb +0 -8
  60. data/testing/rspec/spec/integration/linters/test_with_too_many_steps_linter_integration_spec.rb +0 -8
  61. data/testing/rspec/spec/unit/cuke_linter_unit_spec.rb +0 -114
  62. data/testing/rspec/spec/unit/formatters/formatter_unit_specs.rb +0 -11
  63. data/testing/rspec/spec/unit/formatters/pretty_formatter_unit_spec.rb +0 -115
  64. data/testing/rspec/spec/unit/linters/background_does_more_than_setup_linter_unit_spec.rb +0 -186
  65. data/testing/rspec/spec/unit/linters/configurable_linter_unit_specs.rb +0 -11
  66. data/testing/rspec/spec/unit/linters/element_with_common_tags_linter_unit_spec.rb +0 -248
  67. data/testing/rspec/spec/unit/linters/element_with_duplicate_tags_linter_unit_spec.rb +0 -203
  68. data/testing/rspec/spec/unit/linters/element_with_too_many_tags_linter_unit_spec.rb +0 -296
  69. data/testing/rspec/spec/unit/linters/example_without_name_linter_unit_spec.rb +0 -81
  70. data/testing/rspec/spec/unit/linters/feature_file_with_invalid_name_linter_unit_spec.rb +0 -106
  71. data/testing/rspec/spec/unit/linters/feature_file_with_mismatched_name_linter_unit_spec.rb +0 -124
  72. data/testing/rspec/spec/unit/linters/feature_with_too_many_different_tags_linter_unit_spec.rb +0 -293
  73. data/testing/rspec/spec/unit/linters/feature_without_description_linter_unit_spec.rb +0 -80
  74. data/testing/rspec/spec/unit/linters/feature_without_name_linter_unit_spec.rb +0 -84
  75. data/testing/rspec/spec/unit/linters/feature_without_scenarios_linter_unit_spec.rb +0 -102
  76. data/testing/rspec/spec/unit/linters/linter_unit_spec.rb +0 -197
  77. data/testing/rspec/spec/unit/linters/linter_unit_specs.rb +0 -57
  78. data/testing/rspec/spec/unit/linters/outline_with_single_example_row_linter_unit_spec.rb +0 -184
  79. data/testing/rspec/spec/unit/linters/single_test_background_linter_unit_spec.rb +0 -89
  80. data/testing/rspec/spec/unit/linters/step_with_end_period_linter_unit_spec.rb +0 -54
  81. data/testing/rspec/spec/unit/linters/step_with_too_many_characters_linter_unit_spec.rb +0 -155
  82. data/testing/rspec/spec/unit/linters/test_should_use_background_linter_unit_spec.rb +0 -464
  83. data/testing/rspec/spec/unit/linters/test_with_action_step_as_final_step_linter_unit_spec.rb +0 -165
  84. data/testing/rspec/spec/unit/linters/test_with_bad_name_linter_unit_spec.rb +0 -81
  85. data/testing/rspec/spec/unit/linters/test_with_no_action_step_linter_unit_spec.rb +0 -244
  86. data/testing/rspec/spec/unit/linters/test_with_no_name_linter_unit_spec.rb +0 -88
  87. data/testing/rspec/spec/unit/linters/test_with_no_verification_step_linter_unit_spec.rb +0 -246
  88. data/testing/rspec/spec/unit/linters/test_with_setup_step_after_action_step_linter_unit_spec.rb +0 -233
  89. data/testing/rspec/spec/unit/linters/test_with_setup_step_after_verification_step_linter_unit_spec.rb +0 -233
  90. data/testing/rspec/spec/unit/linters/test_with_setup_step_as_final_step_linter_unit_spec.rb +0 -164
  91. data/testing/rspec/spec/unit/linters/test_with_too_many_steps_linter_unit_spec.rb +0 -192
@@ -1,243 +0,0 @@
1
- require_relative '../../../../environments/rspec_env'
2
-
3
- RSpec.describe CukeLinter do
4
-
5
- let(:test_model_tree) { CukeLinter::ModelFactory.generate_lintable_model }
6
- let(:test_linters) { [CukeLinter::LinterFactory.generate_fake_linter] }
7
- let(:test_formatters) { [[CukeLinter::FormatterFactory.generate_fake_formatter, "#{CukeLinter::FileHelper::create_directory}/junk_output_file.txt"]] }
8
- let(:linting_options) { { model_trees: [test_model_tree], linters: test_linters, formatters: test_formatters } }
9
-
10
-
11
- it 'returns the un-formatted linting data when linting' do
12
- results = subject.lint(linting_options)
13
-
14
- expect(results).to eq([{ linter: 'FakeLinter', location: 'path_to_file:1', problem: 'FakeLinter problem' }])
15
- end
16
-
17
- it 'uses every formatter provided' do
18
- linting_options[:formatters] = [[CukeLinter::FormatterFactory.generate_fake_formatter(name: 'Formatter1')],
19
- [CukeLinter::FormatterFactory.generate_fake_formatter(name: 'Formatter2')]]
20
-
21
- expect { subject.lint(linting_options) }.to output("Formatter1: FakeLinter problem: path_to_file:1\nFormatter2: FakeLinter problem: path_to_file:1\n").to_stdout
22
- end
23
-
24
- it "uses the 'pretty' formatter if none are provided" do
25
- linting_options.delete(:formatters)
26
-
27
- expect { subject.lint(linting_options) }.to output(['FakeLinter',
28
- ' FakeLinter problem',
29
- ' path_to_file:1',
30
- '',
31
- '1 issues found',
32
- ''].join("\n")).to_stdout
33
- end
34
-
35
- it 'outputs formatted linting data to the provided output location' do
36
- output_path = "#{CukeLinter::FileHelper::create_directory}/output.txt"
37
- linting_options[:formatters] = [[CukeLinter::FormatterFactory.generate_fake_formatter(name: 'Formatter1'),
38
- output_path]]
39
-
40
- expect { subject.lint(linting_options) }.to_not output.to_stdout
41
- expect(File.read(output_path)).to eq("Formatter1: FakeLinter problem: path_to_file:1\n")
42
- end
43
-
44
- it 'outputs formatted data to STDOUT if not location is provided' do
45
- linting_options[:formatters] = [[CukeLinter::FormatterFactory.generate_fake_formatter(name: 'Formatter1')]]
46
-
47
- expect { subject.lint(linting_options) }.to output("Formatter1: FakeLinter problem: path_to_file:1\n").to_stdout
48
- end
49
-
50
- context 'with only model trees' do
51
-
52
- before(:each) do
53
- child_model = CukeLinter::ModelFactory.generate_lintable_model(source_line: 3)
54
- parent_model = CukeLinter::ModelFactory.generate_lintable_model(source_line: 5, children: [child_model])
55
- multi_node_tree = parent_model
56
- single_node_tree = CukeLinter::ModelFactory.generate_lintable_model(source_line: 7)
57
-
58
- linting_options[:model_trees] = [single_node_tree, multi_node_tree]
59
- linting_options.delete(:file_paths)
60
- end
61
-
62
- it 'lints every model in each model tree' do
63
- results = subject.lint(linting_options)
64
-
65
- expect(results).to match_array([{ linter: 'FakeLinter', location: 'path_to_file:3', problem: 'FakeLinter problem' },
66
- { linter: 'FakeLinter', location: 'path_to_file:5', problem: 'FakeLinter problem' },
67
- { linter: 'FakeLinter', location: 'path_to_file:7', problem: 'FakeLinter problem' }])
68
- end
69
-
70
- end
71
-
72
- context 'with only file paths' do
73
-
74
- before(:each) do
75
- @a_feature_file = CukeLinter::FileHelper::create_file(text: "\nFeature:", extension: '.feature')
76
- a_non_feature_file = CukeLinter::FileHelper::create_file(text: 'Some text', extension: '.foo')
77
- @a_directory = CukeLinter::FileHelper::create_directory
78
- File.write("#{@a_directory}/test_feature.feature", "Feature:")
79
-
80
- linting_options[:file_paths] = [@a_feature_file, a_non_feature_file, @a_directory]
81
- linting_options.delete(:model_trees)
82
- end
83
-
84
- # TODO: add a negative test that makes sure that non-included paths aren't linted when paths are explicitly included
85
-
86
- it 'lints every model in each path' do
87
- results = subject.lint(linting_options)
88
-
89
- expect(results).to match_array([{ linter: 'FakeLinter', location: @a_directory, problem: 'FakeLinter problem' },
90
- { linter: 'FakeLinter', location: "#{@a_directory}/test_feature.feature", problem: 'FakeLinter problem' },
91
- { linter: 'FakeLinter', location: "#{@a_directory}/test_feature.feature:1", problem: 'FakeLinter problem' },
92
- { linter: 'FakeLinter', location: @a_feature_file, problem: 'FakeLinter problem' },
93
- { linter: 'FakeLinter', location: "#{@a_feature_file}:2", problem: 'FakeLinter problem' }])
94
- end
95
-
96
- end
97
-
98
- context 'with both model trees and file paths' do
99
-
100
- before(:each) do
101
- a_model = CukeLinter::ModelFactory.generate_lintable_model(source_line: 3)
102
- @a_feature_file = CukeLinter::FileHelper::create_file(text: 'Feature:', extension: '.feature')
103
-
104
- linting_options[:model_trees] = [a_model]
105
- linting_options[:file_paths] = [@a_feature_file]
106
- end
107
-
108
-
109
- it 'lints every model in each model tree and file path' do
110
- results = subject.lint(linting_options)
111
-
112
- expect(results).to match_array([{ linter: 'FakeLinter', location: 'path_to_file:3', problem: 'FakeLinter problem' },
113
- { linter: 'FakeLinter', location: @a_feature_file, problem: 'FakeLinter problem' },
114
- { linter: 'FakeLinter', location: "#{@a_feature_file}:1", problem: 'FakeLinter problem' }])
115
- end
116
-
117
- end
118
-
119
- context 'with neither model trees or file paths' do
120
-
121
- before(:each) do
122
- linting_options.delete(:model_trees)
123
- linting_options.delete(:file_paths)
124
- end
125
-
126
- it 'models the current directory' do
127
- test_dir = CukeLinter::FileHelper::create_directory
128
- File.write("#{test_dir}/test_feature.feature", "Feature:")
129
-
130
- Dir.chdir(test_dir) do
131
- @results = subject.lint(linting_options)
132
- end
133
-
134
- # There should be 3 models to lint: the directory, the feature file, and the feature
135
- expect(@results.count).to eq(3)
136
- end
137
-
138
- end
139
-
140
- it 'uses evey linter provided' do
141
- linting_options[:linters] = [CukeLinter::LinterFactory.generate_fake_linter(name: 'FakeLinter1'),
142
- CukeLinter::LinterFactory.generate_fake_linter(name: 'FakeLinter2')]
143
-
144
- results = subject.lint(linting_options)
145
-
146
- expect(results).to match_array([{ linter: 'FakeLinter1', location: 'path_to_file:1', problem: 'FakeLinter1 problem' },
147
- { linter: 'FakeLinter2', location: 'path_to_file:1', problem: 'FakeLinter2 problem' }])
148
- end
149
-
150
- it 'uses all registered linters if none are provided', :linter_registration do
151
- CukeLinter.clear_registered_linters
152
- CukeLinter.register_linter(linter: CukeLinter::LinterFactory.generate_fake_linter(name: 'FakeLinter1'), name: 'FakeLinter1')
153
- CukeLinter.register_linter(linter: CukeLinter::LinterFactory.generate_fake_linter(name: 'FakeLinter2'), name: 'FakeLinter2')
154
- CukeLinter.register_linter(linter: CukeLinter::LinterFactory.generate_fake_linter(name: 'FakeLinter3'), name: 'FakeLinter3')
155
-
156
- begin
157
- linting_options.delete(:linters)
158
- results = subject.lint(linting_options)
159
-
160
- expect(results).to match_array([{ linter: 'FakeLinter1', location: 'path_to_file:1', problem: 'FakeLinter1 problem' },
161
- { linter: 'FakeLinter2', location: 'path_to_file:1', problem: 'FakeLinter2 problem' },
162
- { linter: 'FakeLinter3', location: 'path_to_file:1', problem: 'FakeLinter3 problem' }])
163
- ensure
164
- CukeLinter.reset_linters
165
- end
166
- end
167
-
168
- it 'includes the name of the linter in the linting data' do
169
- linting_options[:linters] = [CukeLinter::LinterFactory.generate_fake_linter(name: 'FakeLinter1'),
170
- CukeLinter::LinterFactory.generate_fake_linter(name: 'FakeLinter2')]
171
-
172
- results = subject.lint(linting_options)
173
-
174
- expect(results).to match_array([{ linter: 'FakeLinter1', location: 'path_to_file:1', problem: 'FakeLinter1 problem' },
175
- { linter: 'FakeLinter2', location: 'path_to_file:1', problem: 'FakeLinter2 problem' }])
176
- end
177
-
178
- it 'has a default set of registered linters' do
179
- subject.reset_linters
180
-
181
- default_linter_classes = ['BackgroundDoesMoreThanSetupLinter',
182
- 'ElementWithCommonTagsLinter',
183
- 'ElementWithDuplicateTagsLinter',
184
- 'ElementWithTooManyTagsLinter',
185
- 'ExampleWithoutNameLinter',
186
- 'FeatureFileWithInvalidNameLinter',
187
- 'FeatureFileWithMismatchedNameLinter',
188
- 'FeatureWithTooManyDifferentTagsLinter',
189
- 'FeatureWithoutDescriptionLinter',
190
- 'FeatureWithoutNameLinter',
191
- 'FeatureWithoutScenariosLinter',
192
- 'OutlineWithSingleExampleRowLinter',
193
- 'SingleTestBackgroundLinter',
194
- 'StepWithEndPeriodLinter',
195
- 'StepWithTooManyCharactersLinter',
196
- 'TestShouldUseBackgroundLinter',
197
- 'TestWithActionStepAsFinalStepLinter',
198
- 'TestWithBadNameLinter',
199
- 'TestWithNoActionStepLinter',
200
- 'TestWithNoNameLinter',
201
- 'TestWithNoVerificationStepLinter',
202
- 'TestWithSetupStepAfterActionStepLinter',
203
- 'TestWithSetupStepAfterVerificationStepLinter',
204
- 'TestWithSetupStepAsFinalStepLinter',
205
- 'TestWithTooManyStepsLinter']
206
-
207
- expect(subject.registered_linters.keys).to eq(default_linter_classes)
208
-
209
- default_linter_classes.each do |clazz|
210
- expect(subject.registered_linters[clazz]).to be_a(CukeLinter.const_get(clazz))
211
-
212
- end
213
- end
214
-
215
- it 'returns to its default set of linters after being reset' do
216
- original_names = CukeLinter.registered_linters.keys
217
- original_linter_types = CukeLinter.registered_linters.values.map(&:class)
218
- new_linter = CukeLinter::LinterFactory.generate_fake_linter
219
-
220
- CukeLinter.register_linter(linter: new_linter, name: 'FakeLinter')
221
- CukeLinter.reset_linters
222
-
223
- expect(CukeLinter.registered_linters.keys).to eq(original_names)
224
- expect(CukeLinter.registered_linters.values.map(&:class)).to eq(original_linter_types)
225
- end
226
-
227
- # To protect against someone modifying them
228
- it 'does not reuse the old linting objects when resetting to the default linters' do
229
- original_linter_ids = CukeLinter.registered_linters.values.map(&:object_id)
230
-
231
- CukeLinter.reset_linters
232
-
233
- expect(CukeLinter.registered_linters.values.map(&:object_id)).to_not match_array(original_linter_ids)
234
- end
235
-
236
- it 'can handle a mixture of problematic and non-problematic models' do
237
- linting_options[:linters] = [CukeLinter::LinterFactory.generate_fake_linter(finds_problems: true),
238
- CukeLinter::LinterFactory.generate_fake_linter(finds_problems: false)]
239
-
240
- expect { subject.lint(linting_options) }.to_not raise_error
241
- end
242
-
243
- end
@@ -1,5 +0,0 @@
1
- shared_examples_for 'a formatter at the integration level' do
2
-
3
- # No defined behavior yet
4
-
5
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::PrettyFormatter do
5
-
6
- it_should_behave_like 'a formatter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::BackgroundDoesMoreThanSetupLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::ElementWithCommonTagsLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::ElementWithDuplicateTagsLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::ElementWithTooManyTagsLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::ExampleWithoutNameLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::FeatureFileWithInvalidNameLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::FeatureFileWithMismatchedNameLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::FeatureWithTooManyDifferentTagsLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::FeatureWithoutDescriptionLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::FeatureWithoutNameLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::FeatureWithoutScenariosLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::Linter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,7 +0,0 @@
1
- shared_examples_for 'a linter at the integration level' do
2
-
3
- # it 'inherits from the base linter' do
4
- # expect(subject).to be_a(CukeLinter::BaseLinter)
5
- # end
6
-
7
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::OutlineWithSingleExampleRowLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::SingleTestBackgroundLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::StepWithEndPeriodLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::StepWithTooManyCharactersLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::TestShouldUseBackgroundLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::TestWithActionStepAsFinalStepLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end
@@ -1,8 +0,0 @@
1
- require_relative '../../../../../environments/rspec_env'
2
-
3
-
4
- RSpec.describe CukeLinter::TestWithBadNameLinter do
5
-
6
- it_should_behave_like 'a linter at the integration level'
7
-
8
- end