ruby_raider 3.0.1 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/e2e_tests.yml +0 -17
- data/.github/workflows/system_tests.yml +0 -22
- data/README.md +8 -62
- data/lib/commands/scaffolding_commands.rb +1 -192
- data/lib/commands/utility_commands.rb +0 -43
- data/lib/generators/automation/templates/login.tt +1 -9
- data/lib/generators/automation/templates/page.tt +1 -7
- data/lib/generators/automation/templates/partials/initialize_selector.tt +1 -3
- data/lib/generators/automation/templates/partials/visit_method.tt +2 -6
- data/lib/generators/common_generator.rb +0 -6
- data/lib/generators/cucumber/cucumber_generator.rb +0 -24
- data/lib/generators/cucumber/templates/accessibility_steps.tt +2 -6
- data/lib/generators/cucumber/templates/cucumber.tt +0 -7
- data/lib/generators/cucumber/templates/env.tt +1 -3
- data/lib/generators/cucumber/templates/partials/appium_env.tt +1 -6
- data/lib/generators/cucumber/templates/partials/selenium_env.tt +0 -5
- data/lib/generators/cucumber/templates/partials/watir_env.tt +0 -5
- data/lib/generators/cucumber/templates/partials/web_steps.tt +4 -4
- data/lib/generators/cucumber/templates/world.tt +1 -3
- data/lib/generators/generator.rb +2 -46
- data/lib/generators/helper_generator.rb +4 -42
- data/lib/generators/infrastructure/templates/github.tt +2 -2
- data/lib/generators/infrastructure/templates/github_appium.tt +2 -6
- data/lib/generators/invoke_generators.rb +4 -25
- data/lib/generators/menu_generator.rb +10 -100
- data/lib/generators/rspec/rspec_generator.rb +0 -11
- data/lib/generators/rspec/templates/accessibility_spec.tt +2 -6
- data/lib/generators/rspec/templates/spec.tt +6 -8
- data/lib/generators/templates/common/gemfile.tt +0 -26
- data/lib/generators/templates/common/git_ignore.tt +0 -2
- data/lib/generators/templates/common/partials/mobile_config.tt +0 -4
- data/lib/generators/templates/common/partials/web_config.tt +0 -4
- data/lib/generators/templates/common/rakefile.tt +0 -9
- data/lib/generators/templates/common/read_me.tt +4 -10
- data/lib/generators/templates/helpers/allure_helper.tt +0 -10
- data/lib/generators/templates/helpers/partials/debug_diagnostics.tt +1 -3
- data/lib/generators/templates/helpers/partials/debug_start.tt +1 -3
- data/lib/generators/templates/helpers/partials/quit_driver.tt +1 -3
- data/lib/generators/templates/helpers/partials/screenshot.tt +1 -3
- data/lib/generators/templates/helpers/spec_helper.tt +2 -39
- data/lib/ruby_raider.rb +2 -50
- data/lib/scaffolding/project_detector.rb +2 -9
- data/lib/scaffolding/scaffolding.rb +0 -109
- data/lib/scaffolding/templates/component.tt +1 -4
- data/lib/scaffolding/templates/page_object.tt +0 -10
- data/lib/scaffolding/templates/spec.tt +2 -6
- data/lib/scaffolding/templates/steps.tt +0 -2
- data/lib/utilities/utilities.rb +23 -29
- data/lib/version +1 -1
- data/sig/commands/scaffolding_commands.rbs +0 -12
- data/sig/commands/utility_commands.rbs +0 -6
- data/sig/generators/cucumber/cucumber_generator.rbs +0 -4
- data/sig/generators/generator.rbs +0 -11
- data/sig/generators/helper_generator.rbs +1 -5
- data/sig/generators/invoke_generators.rbs +1 -2
- data/sig/generators/menu_generator.rbs +2 -6
- data/sig/generators/rspec/rspec_generator.rbs +0 -2
- data/sig/ruby_raider.rbs +1 -3
- data/sig/scaffolding/project_detector.rbs +0 -1
- data/sig/scaffolding/scaffolding.rbs +0 -23
- data/sig/utilities/utilities.rbs +0 -4
- data/spec/commands/raider_commands_spec.rb +0 -61
- data/spec/integration/commands/browser_update_after_creation_spec.rb +123 -0
- data/spec/integration/commands/scaffolding_commands_spec.rb +0 -20
- data/spec/integration/commands/utility_commands_spec.rb +5 -5
- data/spec/integration/content/ci_content_spec.rb +6 -61
- data/spec/integration/content/common_content_spec.rb +0 -64
- data/spec/integration/content/config_content_spec.rb +1 -51
- data/spec/integration/content/content_helper.rb +2 -2
- data/spec/integration/content/gemfile_content_spec.rb +0 -71
- data/spec/integration/content/helper_content_spec.rb +4 -240
- data/spec/integration/content/page_content_spec.rb +0 -89
- data/spec/integration/content/syntax_validation_spec.rb +2 -2
- data/spec/integration/content/test_content_spec.rb +0 -119
- data/spec/integration/end_to_end_features_spec.rb +13 -411
- data/spec/integration/end_to_end_spec.rb +0 -96
- data/spec/integration/generators/axe_addon_spec.rb +2 -52
- data/spec/integration/generators/common_generator_spec.rb +1 -13
- data/spec/integration/generators/config_features_spec.rb +3 -81
- data/spec/integration/generators/debug_helper_spec.rb +0 -20
- data/spec/integration/generators/github_generator_spec.rb +5 -15
- data/spec/integration/generators/helpers_generator_spec.rb +0 -37
- data/spec/integration/scaffolding_e2e_spec.rb +2 -237
- data/spec/integration/settings_helper.rb +1 -3
- data/spec/integration/spec_helper.rb +6 -11
- data/spec/menus/menu_generator_spec.rb +4 -107
- data/spec/scaffolding/scaffold_project_detector_spec.rb +4 -26
- data/spec/scaffolding/scaffolding_features_spec.rb +0 -183
- data/spec/system/selenium_spec.rb +1 -4
- data/spec/system/support/system_test_helper.rb +0 -1
- data/spec/system/watir_spec.rb +1 -4
- data/spec/utilities/headless_config_spec.rb +0 -7
- metadata +3 -97
- data/lib/adopter/adopt_menu.rb +0 -146
- data/lib/adopter/converters/base_converter.rb +0 -84
- data/lib/adopter/converters/identity_converter.rb +0 -53
- data/lib/adopter/migration_plan.rb +0 -74
- data/lib/adopter/migrator.rb +0 -96
- data/lib/adopter/plan_builder.rb +0 -275
- data/lib/adopter/project_analyzer.rb +0 -252
- data/lib/adopter/project_detector.rb +0 -157
- data/lib/generators/cucumber/templates/partials/capybara_env.tt +0 -38
- data/lib/generators/cucumber/templates/partials/capybara_world.tt +0 -6
- data/lib/generators/cucumber/templates/performance_feature.tt +0 -5
- data/lib/generators/cucumber/templates/performance_steps.tt +0 -17
- data/lib/generators/cucumber/templates/visual_feature.tt +0 -5
- data/lib/generators/cucumber/templates/visual_steps.tt +0 -19
- data/lib/generators/infrastructure/gitlab_generator.rb +0 -11
- data/lib/generators/infrastructure/templates/gitlab.tt +0 -46
- data/lib/generators/minitest/minitest_generator.rb +0 -35
- data/lib/generators/minitest/templates/accessibility_test.tt +0 -26
- data/lib/generators/minitest/templates/performance_test.tt +0 -18
- data/lib/generators/minitest/templates/test.tt +0 -64
- data/lib/generators/minitest/templates/visual_test.tt +0 -23
- data/lib/generators/rspec/templates/performance_spec.tt +0 -18
- data/lib/generators/rspec/templates/visual_spec.tt +0 -20
- data/lib/generators/templates/helpers/capybara_helper.tt +0 -32
- data/lib/generators/templates/helpers/performance_helper.tt +0 -57
- data/lib/generators/templates/helpers/visual_helper.tt +0 -58
- data/lib/llm/client.rb +0 -79
- data/lib/llm/config.rb +0 -57
- data/lib/llm/prompts.rb +0 -84
- data/lib/llm/provider.rb +0 -27
- data/lib/llm/providers/anthropic_provider.rb +0 -43
- data/lib/llm/providers/ollama_provider.rb +0 -56
- data/lib/llm/providers/openai_provider.rb +0 -42
- data/lib/llm/response_parser.rb +0 -67
- data/lib/plugin/plugin.rb +0 -111
- data/lib/plugin/plugin_exposer.rb +0 -55
- data/lib/scaffolding/crud_generator.rb +0 -94
- data/lib/scaffolding/dry_run_presenter.rb +0 -16
- data/lib/scaffolding/page_introspector.rb +0 -45
- data/lib/scaffolding/scaffold_menu.rb +0 -103
- data/lib/scaffolding/templates/page_from_url.tt +0 -75
- data/lib/scaffolding/templates/spec_from_page.tt +0 -31
- data/lib/scaffolding/templates/spec_from_url.tt +0 -46
- data/lib/scaffolding/url_analyzer.rb +0 -179
- data/sig/adopter/adopt_menu.rbs +0 -25
- data/sig/adopter/converters/base_converter.rbs +0 -23
- data/sig/adopter/converters/identity_converter.rbs +0 -16
- data/sig/adopter/migration_plan.rbs +0 -34
- data/sig/adopter/migrator.rbs +0 -21
- data/sig/adopter/plan_builder.rbs +0 -38
- data/sig/adopter/project_analyzer.rbs +0 -39
- data/sig/adopter/project_detector.rbs +0 -26
- data/sig/generators/infrastructure/gitlab_generator.rbs +0 -4
- data/sig/generators/minitest/minitest_generator.rbs +0 -8
- data/sig/llm/client.rbs +0 -15
- data/sig/llm/config.rbs +0 -20
- data/sig/llm/prompts.rbs +0 -8
- data/sig/llm/provider.rbs +0 -12
- data/sig/llm/providers/anthropic_provider.rbs +0 -16
- data/sig/llm/providers/ollama_provider.rbs +0 -18
- data/sig/llm/providers/openai_provider.rbs +0 -16
- data/sig/llm/response_parser.rbs +0 -13
- data/sig/plugin/plugin.rbs +0 -24
- data/sig/plugin/plugin_exposer.rbs +0 -20
- data/sig/scaffolding/crud_generator.rbs +0 -16
- data/sig/scaffolding/dry_run_presenter.rbs +0 -4
- data/sig/scaffolding/page_introspector.rbs +0 -14
- data/sig/scaffolding/scaffold_menu.rbs +0 -18
- data/sig/scaffolding/url_analyzer.rbs +0 -28
- data/spec/adopter/adopt_menu_spec.rb +0 -176
- data/spec/adopter/converters/identity_converter_spec.rb +0 -145
- data/spec/adopter/migration_plan_spec.rb +0 -113
- data/spec/adopter/migrator_spec.rb +0 -277
- data/spec/adopter/plan_builder_spec.rb +0 -298
- data/spec/adopter/project_analyzer_spec.rb +0 -337
- data/spec/adopter/project_detector_spec.rb +0 -295
- data/spec/generators/generator_spec.rb +0 -23
- data/spec/integration/content/reporter_content_spec.rb +0 -236
- data/spec/integration/content/skip_flags_content_spec.rb +0 -206
- data/spec/integration/generators/gitlab_generator_spec.rb +0 -38
- data/spec/integration/generators/lighthouse_addon_spec.rb +0 -132
- data/spec/integration/generators/minitest_generator_spec.rb +0 -64
- data/spec/integration/generators/reporter_spec.rb +0 -159
- data/spec/integration/generators/skip_flags_spec.rb +0 -134
- data/spec/integration/generators/visual_addon_spec.rb +0 -148
- data/spec/llm/client_spec.rb +0 -79
- data/spec/llm/config_spec.rb +0 -92
- data/spec/llm/prompts_spec.rb +0 -49
- data/spec/llm/response_parser_spec.rb +0 -92
- data/spec/menus/adopter_adopt_menu_spec.rb +0 -97
- data/spec/scaffolding/page_introspector_spec.rb +0 -82
- data/spec/scaffolding/url_analyzer_spec.rb +0 -110
- data/spec/system/adopt_matrix_spec.rb +0 -537
- data/spec/system/adopt_spec.rb +0 -225
- data/spec/system/capybara_spec.rb +0 -42
|
@@ -1,236 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative 'content_helper'
|
|
4
|
-
require 'fileutils'
|
|
5
|
-
|
|
6
|
-
describe 'Reporter content validation' do
|
|
7
|
-
include InvokeGenerators
|
|
8
|
-
|
|
9
|
-
# Generate projects with different reporter configurations
|
|
10
|
-
before(:all) do # rubocop:disable RSpec/BeforeAfterAll
|
|
11
|
-
%w[allure junit both none].each do |reporter|
|
|
12
|
-
%w[rspec cucumber minitest].each do |framework|
|
|
13
|
-
name = "reporter_#{reporter}_#{framework}"
|
|
14
|
-
InvokeGenerators.generate_framework(
|
|
15
|
-
automation: 'selenium', framework:, name:, reporter:
|
|
16
|
-
)
|
|
17
|
-
end
|
|
18
|
-
end
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
after(:all) do # rubocop:disable RSpec/BeforeAfterAll
|
|
22
|
-
%w[allure junit both none].each do |reporter|
|
|
23
|
-
%w[rspec cucumber minitest].each do |framework|
|
|
24
|
-
FileUtils.rm_rf("reporter_#{reporter}_#{framework}")
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
# --- Shared examples ---
|
|
30
|
-
|
|
31
|
-
shared_examples 'project with allure' do |project_name|
|
|
32
|
-
it 'generates allure_helper.rb' do
|
|
33
|
-
expect(File).to exist("#{project_name}/helpers/allure_helper.rb")
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
it 'creates allure-results directory' do
|
|
37
|
-
expect(File).to exist("#{project_name}/allure-results")
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
it 'includes allure-results in .gitignore' do
|
|
41
|
-
gitignore = read_generated(project_name, '.gitignore')
|
|
42
|
-
expect(gitignore).to include('allure-results')
|
|
43
|
-
end
|
|
44
|
-
end
|
|
45
|
-
|
|
46
|
-
shared_examples 'project without allure' do |project_name|
|
|
47
|
-
it 'does not generate allure_helper.rb' do
|
|
48
|
-
expect(File).not_to exist("#{project_name}/helpers/allure_helper.rb")
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
it 'does not create allure-results directory' do
|
|
52
|
-
expect(File).not_to exist("#{project_name}/allure-results")
|
|
53
|
-
end
|
|
54
|
-
|
|
55
|
-
it 'does not include allure-results in .gitignore' do
|
|
56
|
-
gitignore = read_generated(project_name, '.gitignore')
|
|
57
|
-
expect(gitignore).not_to include('allure-results')
|
|
58
|
-
end
|
|
59
|
-
end
|
|
60
|
-
|
|
61
|
-
shared_examples 'rspec with allure reporter' do |project_name|
|
|
62
|
-
it 'includes allure gems in Gemfile' do
|
|
63
|
-
gemfile = read_generated(project_name, 'Gemfile')
|
|
64
|
-
expect(gemfile).to include("gem 'allure-rspec'")
|
|
65
|
-
expect(gemfile).to include("gem 'allure-ruby-commons'")
|
|
66
|
-
end
|
|
67
|
-
|
|
68
|
-
it 'references AllureHelper in spec_helper' do
|
|
69
|
-
helper = read_generated(project_name, 'helpers/spec_helper.rb')
|
|
70
|
-
expect(helper).to include("require_relative 'allure_helper'")
|
|
71
|
-
expect(helper).to include('AllureHelper.configure')
|
|
72
|
-
expect(helper).to include('config.formatter = AllureHelper.formatter')
|
|
73
|
-
end
|
|
74
|
-
|
|
75
|
-
it 'allure_helper has valid Ruby syntax' do
|
|
76
|
-
content = read_generated(project_name, 'helpers/allure_helper.rb')
|
|
77
|
-
expect(content).to have_valid_ruby_syntax
|
|
78
|
-
end
|
|
79
|
-
end
|
|
80
|
-
|
|
81
|
-
shared_examples 'rspec without allure reporter' do |project_name|
|
|
82
|
-
it 'does not include allure gems in Gemfile' do
|
|
83
|
-
gemfile = read_generated(project_name, 'Gemfile')
|
|
84
|
-
expect(gemfile).not_to include("gem 'allure-rspec'")
|
|
85
|
-
end
|
|
86
|
-
|
|
87
|
-
it 'does not reference AllureHelper in spec_helper' do
|
|
88
|
-
helper = read_generated(project_name, 'helpers/spec_helper.rb')
|
|
89
|
-
expect(helper).not_to include('AllureHelper')
|
|
90
|
-
end
|
|
91
|
-
end
|
|
92
|
-
|
|
93
|
-
shared_examples 'rspec with junit reporter' do |project_name|
|
|
94
|
-
it 'includes rspec_junit_formatter gem in Gemfile' do
|
|
95
|
-
gemfile = read_generated(project_name, 'Gemfile')
|
|
96
|
-
expect(gemfile).to include("gem 'rspec_junit_formatter'")
|
|
97
|
-
end
|
|
98
|
-
|
|
99
|
-
it 'configures junit formatter in spec_helper' do
|
|
100
|
-
helper = read_generated(project_name, 'helpers/spec_helper.rb')
|
|
101
|
-
expect(helper).to include("config.add_formatter('RspecJunitFormatter', 'results/junit.xml')")
|
|
102
|
-
end
|
|
103
|
-
end
|
|
104
|
-
|
|
105
|
-
shared_examples 'rspec without junit reporter' do |project_name|
|
|
106
|
-
it 'does not include rspec_junit_formatter gem in Gemfile' do
|
|
107
|
-
gemfile = read_generated(project_name, 'Gemfile')
|
|
108
|
-
expect(gemfile).not_to include("gem 'rspec_junit_formatter'")
|
|
109
|
-
end
|
|
110
|
-
|
|
111
|
-
it 'does not configure junit formatter in spec_helper' do
|
|
112
|
-
helper = read_generated(project_name, 'helpers/spec_helper.rb')
|
|
113
|
-
expect(helper).not_to include('RspecJunitFormatter')
|
|
114
|
-
end
|
|
115
|
-
end
|
|
116
|
-
|
|
117
|
-
shared_examples 'cucumber with allure reporter' do |project_name|
|
|
118
|
-
it 'includes allure-cucumber gem in Gemfile' do
|
|
119
|
-
gemfile = read_generated(project_name, 'Gemfile')
|
|
120
|
-
expect(gemfile).to include("gem 'allure-cucumber'")
|
|
121
|
-
end
|
|
122
|
-
|
|
123
|
-
it 'configures allure formatter in cucumber.yml' do
|
|
124
|
-
cucumber_yml = read_generated(project_name, 'cucumber.yml')
|
|
125
|
-
expect(cucumber_yml).to include('AllureCucumber::CucumberFormatter')
|
|
126
|
-
expect(cucumber_yml).to include('--out allure-results')
|
|
127
|
-
end
|
|
128
|
-
end
|
|
129
|
-
|
|
130
|
-
shared_examples 'cucumber without allure reporter' do |project_name|
|
|
131
|
-
it 'does not include allure-cucumber gem in Gemfile' do
|
|
132
|
-
gemfile = read_generated(project_name, 'Gemfile')
|
|
133
|
-
expect(gemfile).not_to include("gem 'allure-cucumber'")
|
|
134
|
-
end
|
|
135
|
-
|
|
136
|
-
it 'does not configure allure formatter in cucumber.yml' do
|
|
137
|
-
cucumber_yml = read_generated(project_name, 'cucumber.yml')
|
|
138
|
-
expect(cucumber_yml).not_to include('AllureCucumber')
|
|
139
|
-
end
|
|
140
|
-
end
|
|
141
|
-
|
|
142
|
-
shared_examples 'valid ruby files' do |project_name|
|
|
143
|
-
it 'generates spec_helper or test_helper with valid syntax' do
|
|
144
|
-
%w[helpers/spec_helper.rb helpers/test_helper.rb].each do |path|
|
|
145
|
-
file = File.join(project_name, path)
|
|
146
|
-
next unless File.exist?(file)
|
|
147
|
-
|
|
148
|
-
content = File.read(file)
|
|
149
|
-
expect(content).to have_valid_ruby_syntax
|
|
150
|
-
expect(content).to have_frozen_string_literal
|
|
151
|
-
end
|
|
152
|
-
end
|
|
153
|
-
end
|
|
154
|
-
|
|
155
|
-
# --- reporter: allure ---
|
|
156
|
-
|
|
157
|
-
context 'with reporter: allure' do
|
|
158
|
-
context 'and rspec' do
|
|
159
|
-
name = 'reporter_allure_rspec'
|
|
160
|
-
it_behaves_like 'project with allure', name
|
|
161
|
-
it_behaves_like 'rspec with allure reporter', name
|
|
162
|
-
it_behaves_like 'rspec without junit reporter', name
|
|
163
|
-
it_behaves_like 'valid ruby files', name
|
|
164
|
-
end
|
|
165
|
-
|
|
166
|
-
context 'and cucumber' do
|
|
167
|
-
name = 'reporter_allure_cucumber'
|
|
168
|
-
it_behaves_like 'project with allure', name
|
|
169
|
-
it_behaves_like 'cucumber with allure reporter', name
|
|
170
|
-
it_behaves_like 'valid ruby files', name
|
|
171
|
-
end
|
|
172
|
-
end
|
|
173
|
-
|
|
174
|
-
# --- reporter: junit ---
|
|
175
|
-
|
|
176
|
-
context 'with reporter: junit' do
|
|
177
|
-
context 'and rspec' do
|
|
178
|
-
name = 'reporter_junit_rspec'
|
|
179
|
-
it_behaves_like 'project without allure', name
|
|
180
|
-
it_behaves_like 'rspec without allure reporter', name
|
|
181
|
-
it_behaves_like 'rspec with junit reporter', name
|
|
182
|
-
it_behaves_like 'valid ruby files', name
|
|
183
|
-
end
|
|
184
|
-
|
|
185
|
-
context 'and cucumber' do
|
|
186
|
-
name = 'reporter_junit_cucumber'
|
|
187
|
-
it_behaves_like 'project without allure', name
|
|
188
|
-
it_behaves_like 'cucumber without allure reporter', name
|
|
189
|
-
it_behaves_like 'valid ruby files', name
|
|
190
|
-
end
|
|
191
|
-
end
|
|
192
|
-
|
|
193
|
-
# --- reporter: both ---
|
|
194
|
-
|
|
195
|
-
context 'with reporter: both' do
|
|
196
|
-
context 'and rspec' do
|
|
197
|
-
name = 'reporter_both_rspec'
|
|
198
|
-
it_behaves_like 'project with allure', name
|
|
199
|
-
it_behaves_like 'rspec with allure reporter', name
|
|
200
|
-
it_behaves_like 'rspec with junit reporter', name
|
|
201
|
-
it_behaves_like 'valid ruby files', name
|
|
202
|
-
end
|
|
203
|
-
|
|
204
|
-
context 'and cucumber' do
|
|
205
|
-
name = 'reporter_both_cucumber'
|
|
206
|
-
it_behaves_like 'project with allure', name
|
|
207
|
-
it_behaves_like 'cucumber with allure reporter', name
|
|
208
|
-
it_behaves_like 'valid ruby files', name
|
|
209
|
-
end
|
|
210
|
-
end
|
|
211
|
-
|
|
212
|
-
# --- reporter: none ---
|
|
213
|
-
|
|
214
|
-
context 'with reporter: none' do
|
|
215
|
-
context 'and rspec' do
|
|
216
|
-
name = 'reporter_none_rspec'
|
|
217
|
-
it_behaves_like 'project without allure', name
|
|
218
|
-
it_behaves_like 'rspec without allure reporter', name
|
|
219
|
-
it_behaves_like 'rspec without junit reporter', name
|
|
220
|
-
it_behaves_like 'valid ruby files', name
|
|
221
|
-
end
|
|
222
|
-
|
|
223
|
-
context 'and cucumber' do
|
|
224
|
-
name = 'reporter_none_cucumber'
|
|
225
|
-
it_behaves_like 'project without allure', name
|
|
226
|
-
it_behaves_like 'cucumber without allure reporter', name
|
|
227
|
-
it_behaves_like 'valid ruby files', name
|
|
228
|
-
end
|
|
229
|
-
|
|
230
|
-
context 'and minitest' do
|
|
231
|
-
name = 'reporter_none_minitest'
|
|
232
|
-
it_behaves_like 'project without allure', name
|
|
233
|
-
it_behaves_like 'valid ruby files', name
|
|
234
|
-
end
|
|
235
|
-
end
|
|
236
|
-
end
|
|
@@ -1,206 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative 'content_helper'
|
|
4
|
-
require 'fileutils'
|
|
5
|
-
|
|
6
|
-
describe 'Skip flags content validation' do
|
|
7
|
-
include InvokeGenerators
|
|
8
|
-
|
|
9
|
-
before(:all) do # rubocop:disable RSpec/BeforeAfterAll
|
|
10
|
-
{
|
|
11
|
-
'skip_allure_content' => { skip_allure: true },
|
|
12
|
-
'skip_video_content' => { skip_video: true },
|
|
13
|
-
'skip_ci_content' => { skip_ci: true, ci_platform: 'github' },
|
|
14
|
-
'skip_all_content' => { skip_allure: true, skip_video: true, skip_ci: true, ci_platform: 'github' }
|
|
15
|
-
}.each do |name, flags|
|
|
16
|
-
InvokeGenerators.generate_framework(
|
|
17
|
-
{ automation: 'selenium', framework: 'rspec', name: }.merge(flags)
|
|
18
|
-
)
|
|
19
|
-
end
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
after(:all) do # rubocop:disable RSpec/BeforeAfterAll
|
|
23
|
-
%w[skip_allure_content skip_video_content skip_ci_content skip_all_content].each do |name|
|
|
24
|
-
FileUtils.rm_rf(name)
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
|
|
28
|
-
# --- skip_allure content validation ---
|
|
29
|
-
|
|
30
|
-
describe '--skip-allure file content' do
|
|
31
|
-
let(:name) { 'skip_allure_content' }
|
|
32
|
-
|
|
33
|
-
it 'Gemfile excludes allure gems' do
|
|
34
|
-
gemfile = read_generated(name, 'Gemfile')
|
|
35
|
-
expect(gemfile).not_to include('allure-rspec')
|
|
36
|
-
expect(gemfile).not_to include('allure-ruby-commons')
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
it 'Gemfile still includes core gems' do
|
|
40
|
-
gemfile = read_generated(name, 'Gemfile')
|
|
41
|
-
expect(gemfile).to include("gem 'rake'")
|
|
42
|
-
expect(gemfile).to include("gem 'rspec'")
|
|
43
|
-
expect(gemfile).to include("gem 'selenium-webdriver'")
|
|
44
|
-
expect(gemfile).to include("gem 'rspec-retry'")
|
|
45
|
-
end
|
|
46
|
-
|
|
47
|
-
it 'spec_helper does not reference AllureHelper' do
|
|
48
|
-
helper = read_generated(name, 'helpers/spec_helper.rb')
|
|
49
|
-
expect(helper).not_to include('AllureHelper')
|
|
50
|
-
expect(helper).not_to include('allure_helper')
|
|
51
|
-
end
|
|
52
|
-
|
|
53
|
-
it 'spec_helper still has retry config' do
|
|
54
|
-
helper = read_generated(name, 'helpers/spec_helper.rb')
|
|
55
|
-
expect(helper).to include("require 'rspec/retry'")
|
|
56
|
-
expect(helper).to include('config.verbose_retry = true')
|
|
57
|
-
expect(helper).to include("config.default_retry_count = ENV.fetch('RETRY_COUNT', 0).to_i")
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
it 'spec_helper has valid Ruby syntax' do
|
|
61
|
-
helper = read_generated(name, 'helpers/spec_helper.rb')
|
|
62
|
-
expect(helper).to have_valid_ruby_syntax
|
|
63
|
-
end
|
|
64
|
-
|
|
65
|
-
it '.gitignore excludes allure-results' do
|
|
66
|
-
gitignore = read_generated(name, '.gitignore')
|
|
67
|
-
expect(gitignore).not_to include('allure-results')
|
|
68
|
-
end
|
|
69
|
-
|
|
70
|
-
it '.gitignore still includes spec/examples.txt' do
|
|
71
|
-
gitignore = read_generated(name, '.gitignore')
|
|
72
|
-
expect(gitignore).to include('spec/examples.txt')
|
|
73
|
-
end
|
|
74
|
-
|
|
75
|
-
it 'Rakefile still has tag tasks' do
|
|
76
|
-
rakefile = read_generated(name, 'Rakefile')
|
|
77
|
-
expect(rakefile).to include('RakeTask.new(:smoke)')
|
|
78
|
-
expect(rakefile).to include('RakeTask.new(:regression)')
|
|
79
|
-
end
|
|
80
|
-
|
|
81
|
-
it '.rspec file still exists with correct content' do
|
|
82
|
-
rspec = read_generated(name, '.rspec')
|
|
83
|
-
expect(rspec).to include('--require helpers/spec_helper')
|
|
84
|
-
expect(rspec).to include('--format documentation')
|
|
85
|
-
end
|
|
86
|
-
end
|
|
87
|
-
|
|
88
|
-
# --- skip_video content validation ---
|
|
89
|
-
|
|
90
|
-
describe '--skip-video file content' do
|
|
91
|
-
let(:name) { 'skip_video_content' }
|
|
92
|
-
|
|
93
|
-
it 'spec_helper does not reference video_helper' do
|
|
94
|
-
helper = read_generated(name, 'helpers/spec_helper.rb')
|
|
95
|
-
expect(helper).not_to include('video_helper')
|
|
96
|
-
end
|
|
97
|
-
|
|
98
|
-
it 'spec_helper still includes AllureHelper' do
|
|
99
|
-
helper = read_generated(name, 'helpers/spec_helper.rb')
|
|
100
|
-
expect(helper).to include('AllureHelper')
|
|
101
|
-
end
|
|
102
|
-
|
|
103
|
-
it 'spec_helper has valid Ruby syntax' do
|
|
104
|
-
helper = read_generated(name, 'helpers/spec_helper.rb')
|
|
105
|
-
expect(helper).to have_valid_ruby_syntax
|
|
106
|
-
end
|
|
107
|
-
|
|
108
|
-
it 'Gemfile still includes allure gems' do
|
|
109
|
-
gemfile = read_generated(name, 'Gemfile')
|
|
110
|
-
expect(gemfile).to include("gem 'allure-rspec'")
|
|
111
|
-
end
|
|
112
|
-
end
|
|
113
|
-
|
|
114
|
-
# --- skip_ci content validation ---
|
|
115
|
-
|
|
116
|
-
describe '--skip-ci file content' do
|
|
117
|
-
let(:name) { 'skip_ci_content' }
|
|
118
|
-
|
|
119
|
-
it 'does not generate GitHub Actions directory' do
|
|
120
|
-
expect(File).not_to exist("#{name}/.github")
|
|
121
|
-
end
|
|
122
|
-
|
|
123
|
-
it 'still generates Gemfile with all gems' do
|
|
124
|
-
gemfile = read_generated(name, 'Gemfile')
|
|
125
|
-
expect(gemfile).to include("gem 'rspec'")
|
|
126
|
-
expect(gemfile).to include("gem 'allure-rspec'")
|
|
127
|
-
expect(gemfile).to include("gem 'rspec-retry'")
|
|
128
|
-
end
|
|
129
|
-
|
|
130
|
-
it 'still generates all helpers' do
|
|
131
|
-
expect(File).to exist("#{name}/helpers/spec_helper.rb")
|
|
132
|
-
expect(File).to exist("#{name}/helpers/allure_helper.rb")
|
|
133
|
-
expect(File).to exist("#{name}/helpers/video_helper.rb")
|
|
134
|
-
expect(File).to exist("#{name}/helpers/driver_helper.rb")
|
|
135
|
-
end
|
|
136
|
-
end
|
|
137
|
-
|
|
138
|
-
# --- all skip flags combined ---
|
|
139
|
-
|
|
140
|
-
describe 'all skip flags combined' do
|
|
141
|
-
let(:name) { 'skip_all_content' }
|
|
142
|
-
|
|
143
|
-
it 'Gemfile has no allure gems' do
|
|
144
|
-
gemfile = read_generated(name, 'Gemfile')
|
|
145
|
-
expect(gemfile).not_to include('allure')
|
|
146
|
-
end
|
|
147
|
-
|
|
148
|
-
it 'Gemfile still has core gems' do
|
|
149
|
-
gemfile = read_generated(name, 'Gemfile')
|
|
150
|
-
expect(gemfile).to include("gem 'rspec'")
|
|
151
|
-
expect(gemfile).to include("gem 'selenium-webdriver'")
|
|
152
|
-
expect(gemfile).to include("gem 'rspec-retry'")
|
|
153
|
-
end
|
|
154
|
-
|
|
155
|
-
it 'has no allure_helper.rb' do
|
|
156
|
-
expect(File).not_to exist("#{name}/helpers/allure_helper.rb")
|
|
157
|
-
end
|
|
158
|
-
|
|
159
|
-
it 'has no video_helper.rb' do
|
|
160
|
-
expect(File).not_to exist("#{name}/helpers/video_helper.rb")
|
|
161
|
-
end
|
|
162
|
-
|
|
163
|
-
it 'has no CI files' do
|
|
164
|
-
expect(File).not_to exist("#{name}/.github")
|
|
165
|
-
end
|
|
166
|
-
|
|
167
|
-
it 'spec_helper has no allure or video references' do
|
|
168
|
-
helper = read_generated(name, 'helpers/spec_helper.rb')
|
|
169
|
-
expect(helper).not_to include('AllureHelper')
|
|
170
|
-
expect(helper).not_to include('allure_helper')
|
|
171
|
-
expect(helper).not_to include('video_helper')
|
|
172
|
-
end
|
|
173
|
-
|
|
174
|
-
it 'spec_helper has valid Ruby syntax' do
|
|
175
|
-
helper = read_generated(name, 'helpers/spec_helper.rb')
|
|
176
|
-
expect(helper).to have_valid_ruby_syntax
|
|
177
|
-
end
|
|
178
|
-
|
|
179
|
-
it 'spec_helper still has retry and persistence config' do
|
|
180
|
-
helper = read_generated(name, 'helpers/spec_helper.rb')
|
|
181
|
-
expect(helper).to include("require 'rspec/retry'")
|
|
182
|
-
expect(helper).to include("config.example_status_persistence_file_path = 'spec/examples.txt'")
|
|
183
|
-
end
|
|
184
|
-
|
|
185
|
-
it 'Rakefile still has tag tasks' do
|
|
186
|
-
rakefile = read_generated(name, 'Rakefile')
|
|
187
|
-
expect(rakefile).to include('RakeTask.new(:smoke)')
|
|
188
|
-
end
|
|
189
|
-
|
|
190
|
-
it 'all generated .rb files have valid syntax' do
|
|
191
|
-
Dir.glob("#{name}/**/*.rb").each do |file|
|
|
192
|
-
content = File.read(file)
|
|
193
|
-
expect(content).to have_valid_ruby_syntax,
|
|
194
|
-
"#{file} has invalid Ruby syntax"
|
|
195
|
-
end
|
|
196
|
-
end
|
|
197
|
-
|
|
198
|
-
it 'all generated .rb files (except abstract) have frozen_string_literal' do
|
|
199
|
-
Dir.glob("#{name}/**/*.rb").reject { |f| f.include?('/abstract/') }.each do |file|
|
|
200
|
-
content = File.read(file)
|
|
201
|
-
expect(content).to have_frozen_string_literal,
|
|
202
|
-
"#{file} is missing frozen_string_literal"
|
|
203
|
-
end
|
|
204
|
-
end
|
|
205
|
-
end
|
|
206
|
-
end
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative '../../../lib/generators/infrastructure/gitlab_generator'
|
|
4
|
-
require_relative '../spec_helper'
|
|
5
|
-
|
|
6
|
-
describe GitlabGenerator do
|
|
7
|
-
shared_examples 'selects gitlab as an infrastructure option' do |name|
|
|
8
|
-
it 'creates a gitlab infrastructure file' do
|
|
9
|
-
expect(File).to exist("#{name}/gitlab-ci.yml")
|
|
10
|
-
end
|
|
11
|
-
end
|
|
12
|
-
|
|
13
|
-
shared_examples 'does not select any infrastructure option' do |name|
|
|
14
|
-
it 'does not create a gitlab infrastructure file' do
|
|
15
|
-
expect(File).not_to exist("#{name}/gitlab-ci.yml")
|
|
16
|
-
end
|
|
17
|
-
end
|
|
18
|
-
|
|
19
|
-
context 'with rspec and selenium' do
|
|
20
|
-
include_examples 'selects gitlab as an infrastructure option', "#{FrameworkIndex::RSPEC}_#{AutomationIndex::SELENIUM}_#{CI_PLATFORMS[2]}"
|
|
21
|
-
include_examples 'does not select any infrastructure option', "#{FrameworkIndex::RSPEC}_#{AutomationIndex::SELENIUM}"
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
context 'with rspec and watir' do
|
|
25
|
-
include_examples 'selects gitlab as an infrastructure option', "#{FrameworkIndex::RSPEC}_#{AutomationIndex::WATIR}_#{CI_PLATFORMS[2]}"
|
|
26
|
-
include_examples 'does not select any infrastructure option', "#{FrameworkIndex::RSPEC}_#{AutomationIndex::WATIR}"
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
context 'with cucumber and selenium' do
|
|
30
|
-
include_examples 'selects gitlab as an infrastructure option', "#{FrameworkIndex::CUCUMBER}_#{AutomationIndex::SELENIUM}_#{CI_PLATFORMS[2]}"
|
|
31
|
-
include_examples 'does not select any infrastructure option', "#{FrameworkIndex::CUCUMBER}_#{AutomationIndex::SELENIUM}"
|
|
32
|
-
end
|
|
33
|
-
|
|
34
|
-
context 'with cucumber and watir' do
|
|
35
|
-
include_examples 'selects gitlab as an infrastructure option', "#{FrameworkIndex::CUCUMBER}_#{AutomationIndex::WATIR}_#{CI_PLATFORMS[2]}"
|
|
36
|
-
include_examples 'does not select any infrastructure option', "#{FrameworkIndex::CUCUMBER}_#{AutomationIndex::WATIR}"
|
|
37
|
-
end
|
|
38
|
-
end
|
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require 'fileutils'
|
|
4
|
-
require_relative '../../../lib/generators/invoke_generators'
|
|
5
|
-
require_relative '../settings_helper'
|
|
6
|
-
|
|
7
|
-
describe 'Lighthouse addon generation' do
|
|
8
|
-
include InvokeGenerators
|
|
9
|
-
include SettingsHelper
|
|
10
|
-
|
|
11
|
-
# rubocop:disable RSpec/BeforeAfterAll, RSpec/InstanceVariable
|
|
12
|
-
before(:all) do
|
|
13
|
-
@lighthouse_projects = []
|
|
14
|
-
%w[rspec cucumber minitest].each do |framework|
|
|
15
|
-
%w[selenium watir capybara].each do |automation|
|
|
16
|
-
name = "lighthouse_#{framework}_#{automation}"
|
|
17
|
-
@lighthouse_projects << { name:, framework:, automation: }
|
|
18
|
-
InvokeGenerators.generate_framework(
|
|
19
|
-
automation:, framework:, name:, performance: true
|
|
20
|
-
)
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
end
|
|
24
|
-
|
|
25
|
-
after(:all) do
|
|
26
|
-
@lighthouse_projects.each { |p| FileUtils.rm_rf(p[:name]) }
|
|
27
|
-
end
|
|
28
|
-
# rubocop:enable RSpec/BeforeAfterAll, RSpec/InstanceVariable
|
|
29
|
-
|
|
30
|
-
context 'with rspec and selenium' do
|
|
31
|
-
let(:name) { 'lighthouse_rspec_selenium' }
|
|
32
|
-
|
|
33
|
-
it 'creates performance_helper.rb' do
|
|
34
|
-
expect(File).to exist("#{name}/helpers/performance_helper.rb")
|
|
35
|
-
end
|
|
36
|
-
|
|
37
|
-
it 'creates performance_spec.rb' do
|
|
38
|
-
expect(File).to exist("#{name}/spec/performance_spec.rb")
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
it 'performance helper has valid Ruby syntax' do
|
|
42
|
-
content = File.read("#{name}/helpers/performance_helper.rb")
|
|
43
|
-
expect { RubyVM::InstructionSequence.compile(content) }.not_to raise_error
|
|
44
|
-
end
|
|
45
|
-
|
|
46
|
-
it 'performance spec has valid Ruby syntax' do
|
|
47
|
-
content = File.read("#{name}/spec/performance_spec.rb")
|
|
48
|
-
expect { RubyVM::InstructionSequence.compile(content) }.not_to raise_error
|
|
49
|
-
end
|
|
50
|
-
end
|
|
51
|
-
|
|
52
|
-
context 'with cucumber and selenium' do
|
|
53
|
-
let(:name) { 'lighthouse_cucumber_selenium' }
|
|
54
|
-
|
|
55
|
-
it 'creates performance_helper.rb' do
|
|
56
|
-
expect(File).to exist("#{name}/helpers/performance_helper.rb")
|
|
57
|
-
end
|
|
58
|
-
|
|
59
|
-
it 'creates performance.feature' do
|
|
60
|
-
expect(File).to exist("#{name}/features/performance.feature")
|
|
61
|
-
end
|
|
62
|
-
|
|
63
|
-
it 'creates performance_steps.rb' do
|
|
64
|
-
expect(File).to exist("#{name}/features/step_definitions/performance_steps.rb")
|
|
65
|
-
end
|
|
66
|
-
end
|
|
67
|
-
|
|
68
|
-
context 'with minitest and selenium' do
|
|
69
|
-
let(:name) { 'lighthouse_minitest_selenium' }
|
|
70
|
-
|
|
71
|
-
it 'creates performance_helper.rb' do
|
|
72
|
-
expect(File).to exist("#{name}/helpers/performance_helper.rb")
|
|
73
|
-
end
|
|
74
|
-
|
|
75
|
-
it 'creates test_performance.rb' do
|
|
76
|
-
expect(File).to exist("#{name}/test/test_performance.rb")
|
|
77
|
-
end
|
|
78
|
-
|
|
79
|
-
it 'performance test has valid Ruby syntax' do
|
|
80
|
-
content = File.read("#{name}/test/test_performance.rb")
|
|
81
|
-
expect { RubyVM::InstructionSequence.compile(content) }.not_to raise_error
|
|
82
|
-
end
|
|
83
|
-
end
|
|
84
|
-
|
|
85
|
-
context 'with rspec and watir' do
|
|
86
|
-
let(:name) { 'lighthouse_rspec_watir' }
|
|
87
|
-
|
|
88
|
-
it 'creates performance_helper.rb' do
|
|
89
|
-
expect(File).to exist("#{name}/helpers/performance_helper.rb")
|
|
90
|
-
end
|
|
91
|
-
|
|
92
|
-
it 'creates performance_spec.rb' do
|
|
93
|
-
expect(File).to exist("#{name}/spec/performance_spec.rb")
|
|
94
|
-
end
|
|
95
|
-
end
|
|
96
|
-
|
|
97
|
-
context 'with rspec and capybara' do
|
|
98
|
-
let(:name) { 'lighthouse_rspec_capybara' }
|
|
99
|
-
|
|
100
|
-
it 'creates performance_helper.rb' do
|
|
101
|
-
expect(File).to exist("#{name}/helpers/performance_helper.rb")
|
|
102
|
-
end
|
|
103
|
-
|
|
104
|
-
it 'creates performance_spec.rb' do
|
|
105
|
-
expect(File).to exist("#{name}/spec/performance_spec.rb")
|
|
106
|
-
end
|
|
107
|
-
end
|
|
108
|
-
|
|
109
|
-
context 'without performance flag' do
|
|
110
|
-
let(:name) { 'no_lighthouse_rspec_selenium' }
|
|
111
|
-
|
|
112
|
-
# rubocop:disable RSpec/BeforeAfterAll
|
|
113
|
-
before(:all) do
|
|
114
|
-
InvokeGenerators.generate_framework(
|
|
115
|
-
automation: 'selenium', framework: 'rspec', name: 'no_lighthouse_rspec_selenium'
|
|
116
|
-
)
|
|
117
|
-
end
|
|
118
|
-
|
|
119
|
-
after(:all) do
|
|
120
|
-
FileUtils.rm_rf('no_lighthouse_rspec_selenium')
|
|
121
|
-
end
|
|
122
|
-
# rubocop:enable RSpec/BeforeAfterAll
|
|
123
|
-
|
|
124
|
-
it 'does not create performance_helper.rb' do
|
|
125
|
-
expect(File).not_to exist("#{name}/helpers/performance_helper.rb")
|
|
126
|
-
end
|
|
127
|
-
|
|
128
|
-
it 'does not create performance_spec.rb' do
|
|
129
|
-
expect(File).not_to exist("#{name}/spec/performance_spec.rb")
|
|
130
|
-
end
|
|
131
|
-
end
|
|
132
|
-
end
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require_relative '../../../lib/generators/minitest/minitest_generator'
|
|
4
|
-
require_relative '../spec_helper'
|
|
5
|
-
|
|
6
|
-
describe MinitestGenerator do
|
|
7
|
-
shared_examples 'creates factory files' do |project_name|
|
|
8
|
-
it 'creates a model factory file' do
|
|
9
|
-
expect(File).to exist("#{project_name}/models/model_factory.rb")
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
it 'creates the data for the factory' do
|
|
13
|
-
expect(File).to exist("#{project_name}/models/data/users.yml")
|
|
14
|
-
end
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
shared_examples 'creates minitest files examples' do |project_name, file_name|
|
|
18
|
-
it 'creates a test file' do
|
|
19
|
-
expect(File).to exist("#{project_name}/test/test_#{file_name}_page.rb")
|
|
20
|
-
end
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
shared_examples 'creates test helper' do |project_name|
|
|
24
|
-
it 'creates a test helper file' do
|
|
25
|
-
expect(File).to exist("#{project_name}/helpers/test_helper.rb")
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
context 'with minitest and selenium' do
|
|
30
|
-
include_examples 'creates factory files', "#{FrameworkIndex::MINITEST}_#{AutomationIndex::SELENIUM}"
|
|
31
|
-
include_examples 'creates minitest files examples',
|
|
32
|
-
"#{FrameworkIndex::MINITEST}_#{AutomationIndex::SELENIUM}", 'login'
|
|
33
|
-
include_examples 'creates test helper', "#{FrameworkIndex::MINITEST}_#{AutomationIndex::SELENIUM}"
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
context 'with minitest and watir' do
|
|
37
|
-
include_examples 'creates factory files', "#{FrameworkIndex::MINITEST}_#{AutomationIndex::WATIR}"
|
|
38
|
-
include_examples 'creates minitest files examples',
|
|
39
|
-
"#{FrameworkIndex::MINITEST}_#{AutomationIndex::WATIR}", 'login'
|
|
40
|
-
include_examples 'creates test helper', "#{FrameworkIndex::MINITEST}_#{AutomationIndex::WATIR}"
|
|
41
|
-
end
|
|
42
|
-
|
|
43
|
-
context 'with minitest and capybara' do
|
|
44
|
-
include_examples 'creates factory files', "#{FrameworkIndex::MINITEST}_#{AutomationIndex::CAPYBARA}"
|
|
45
|
-
include_examples 'creates minitest files examples',
|
|
46
|
-
"#{FrameworkIndex::MINITEST}_#{AutomationIndex::CAPYBARA}", 'login'
|
|
47
|
-
include_examples 'creates test helper', "#{FrameworkIndex::MINITEST}_#{AutomationIndex::CAPYBARA}"
|
|
48
|
-
end
|
|
49
|
-
|
|
50
|
-
context 'with minitest and appium android' do
|
|
51
|
-
include_examples 'creates minitest files examples',
|
|
52
|
-
"#{FrameworkIndex::MINITEST}_#{AutomationIndex::ANDROID}", 'pdp'
|
|
53
|
-
end
|
|
54
|
-
|
|
55
|
-
context 'with minitest and appium ios' do
|
|
56
|
-
include_examples 'creates minitest files examples',
|
|
57
|
-
"#{FrameworkIndex::MINITEST}_#{AutomationIndex::IOS}", 'pdp'
|
|
58
|
-
end
|
|
59
|
-
|
|
60
|
-
context 'with minitest and appium cross platform' do
|
|
61
|
-
include_examples 'creates minitest files examples',
|
|
62
|
-
"#{FrameworkIndex::MINITEST}_#{AutomationIndex::CROSS_PLATFORM}", 'pdp'
|
|
63
|
-
end
|
|
64
|
-
end
|