Class: Generator
- Inherits:
-
Thor::Group
- Object
- Thor::Group
- Generator
show all
- Includes:
- TemplateRenderer, Thor::Actions
- Defined in:
- lib/generators/generator.rb
Constant Summary
collapse
- LATEST_RUBY =
'3.4'
Class Method Summary
collapse
Instance Method Summary
collapse
included, #partial
Class Method Details
.source_paths ⇒ Object
16
17
18
19
20
21
|
# File 'lib/generators/generator.rb', line 16
def self.source_paths
base_path = File.dirname(__FILE__)
%W[#{base_path}/automation/templates #{base_path}/cucumber/templates
#{base_path}/rspec/templates #{base_path}/minitest/templates
#{base_path}/templates #{base_path}/infrastructure/templates ]
end
|
Instance Method Details
#allure_reporter? ⇒ Boolean
100
101
102
103
|
# File 'lib/generators/generator.rb', line 100
def allure_reporter?
has_reporter = args.any? { |a| a&.start_with?('reporter_') }
has_reporter ? args.include?('reporter_allure') : !skip_allure?
end
|
#android? ⇒ Boolean
48
49
50
|
# File 'lib/generators/generator.rb', line 48
def android?
args.include?('android')
end
|
#args ⇒ Object
23
24
25
|
# File 'lib/generators/generator.rb', line 23
def args
initializer.first
end
|
#axe_addon? ⇒ Boolean
80
81
82
|
# File 'lib/generators/generator.rb', line 80
def axe_addon?
args.include?('axe_addon')
end
|
#capybara? ⇒ Boolean
64
65
66
|
# File 'lib/generators/generator.rb', line 64
def capybara?
args.include?('capybara')
end
|
The framework is cross platform when it supports Android and iOS
32
33
34
|
# File 'lib/generators/generator.rb', line 32
def cross_platform?
args.include?('cross_platform')
end
|
#cucumber? ⇒ Boolean
27
28
29
|
# File 'lib/generators/generator.rb', line 27
def cucumber?
args.include?('cucumber')
end
|
#ios? ⇒ Boolean
44
45
46
|
# File 'lib/generators/generator.rb', line 44
def ios?
args.include?('ios')
end
|
#json_reporter? ⇒ Boolean
109
110
111
|
# File 'lib/generators/generator.rb', line 109
def json_reporter?
args.include?('reporter_json')
end
|
#junit_reporter? ⇒ Boolean
105
106
107
|
# File 'lib/generators/generator.rb', line 105
def junit_reporter?
args.include?('reporter_junit')
end
|
#lighthouse_addon? ⇒ Boolean
84
85
86
|
# File 'lib/generators/generator.rb', line 84
def lighthouse_addon?
args.include?('lighthouse_addon')
end
|
#minitest? ⇒ Boolean
56
57
58
|
# File 'lib/generators/generator.rb', line 56
def minitest?
args.include?('minitest')
end
|
#mobile? ⇒ Boolean
36
37
38
|
# File 'lib/generators/generator.rb', line 36
def mobile?
(args & %w[android ios cross_platform]).count.positive?
end
|
#rspec? ⇒ Boolean
52
53
54
|
# File 'lib/generators/generator.rb', line 52
def rspec?
args.include?('rspec')
end
|
#ruby_version ⇒ Object
113
114
115
116
|
# File 'lib/generators/generator.rb', line 113
def ruby_version
arg = args.find { |a| a&.start_with?('ruby_version:') }
arg ? arg.split(':', 2).last : LATEST_RUBY
end
|
#selenium? ⇒ Boolean
60
61
62
|
# File 'lib/generators/generator.rb', line 60
def selenium?
args.include?('selenium')
end
|
#selenium_based? ⇒ Boolean
88
89
90
|
# File 'lib/generators/generator.rb', line 88
def selenium_based?
args.include?('selenium')
end
|
40
41
42
|
# File 'lib/generators/generator.rb', line 40
def single_platform?
(args & %w[android ios]).count.positive?
end
|
#skip_allure? ⇒ Boolean
92
93
94
|
# File 'lib/generators/generator.rb', line 92
def skip_allure?
args.include?('skip_allure')
end
|
#skip_video? ⇒ Boolean
96
97
98
|
# File 'lib/generators/generator.rb', line 96
def skip_video?
args.include?('skip_video')
end
|
#visual_addon? ⇒ Boolean
68
69
70
|
# File 'lib/generators/generator.rb', line 68
def visual_addon?
args.include?('visual_addon')
end
|
#watir? ⇒ Boolean
72
73
74
|
# File 'lib/generators/generator.rb', line 72
def watir?
args.include?('watir')
end
|
#web? ⇒ Boolean
76
77
78
|
# File 'lib/generators/generator.rb', line 76
def web?
(args & %w[selenium watir capybara]).count.positive?
end
|