howitzer 2.0.3 → 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (83) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +8 -2
  3. data/.travis.yml +3 -3
  4. data/CHANGELOG.md +27 -11
  5. data/Gemfile +1 -0
  6. data/ISSUE_TEMPLATE.md +16 -0
  7. data/README.md +2 -1
  8. data/Rakefile +18 -2
  9. data/bin/howitzer +7 -6
  10. data/features/cli_help.feature +1 -1
  11. data/features/cli_new.feature +51 -11
  12. data/features/cli_update.feature +44 -4
  13. data/features/cli_version.feature +1 -1
  14. data/features/step_definitions/common_steps.rb +5 -0
  15. data/generators/base_generator.rb +30 -16
  16. data/generators/config/config_generator.rb +13 -3
  17. data/generators/config/templates/boot.rb +1 -1
  18. data/generators/config/templates/capybara.rb +2 -128
  19. data/generators/config/templates/default.yml +20 -3
  20. data/generators/config/templates/drivers/browserstack.rb +19 -0
  21. data/generators/config/templates/drivers/crossbrowsertesting.rb +25 -0
  22. data/generators/config/templates/drivers/headless_chrome.rb +16 -0
  23. data/generators/config/templates/drivers/phantomjs.rb +20 -0
  24. data/generators/config/templates/drivers/poltergeist.rb +11 -0
  25. data/generators/config/templates/drivers/sauce.rb +21 -0
  26. data/generators/config/templates/drivers/selenium.rb +24 -0
  27. data/generators/config/templates/drivers/selenium_grid.rb +27 -0
  28. data/generators/config/templates/drivers/testingbot.rb +20 -0
  29. data/generators/config/templates/drivers/webkit.rb +6 -0
  30. data/generators/cucumber/cucumber_generator.rb +2 -2
  31. data/generators/cucumber/templates/cucumber.rake +0 -8
  32. data/generators/cucumber/templates/env.rb +1 -1
  33. data/generators/cucumber/templates/transformers.rb +11 -25
  34. data/generators/emails/emails_generator.rb +2 -2
  35. data/generators/emails/templates/example_email.rb +1 -1
  36. data/generators/prerequisites/prerequisites_generator.rb +3 -3
  37. data/generators/prerequisites/templates/base.rb +1 -1
  38. data/generators/prerequisites/templates/{factory_girl.rb → factory_bot.rb} +6 -6
  39. data/generators/prerequisites/templates/users.rb +1 -1
  40. data/generators/root/root_generator.rb +2 -2
  41. data/generators/root/templates/.rubocop.yml +2 -2
  42. data/generators/root/templates/Gemfile.erb +14 -18
  43. data/generators/rspec/rspec_generator.rb +2 -2
  44. data/generators/rspec/templates/spec_helper.rb +1 -1
  45. data/generators/tasks/tasks_generator.rb +2 -2
  46. data/generators/turnip/templates/spec_helper.rb +1 -1
  47. data/generators/turnip/turnip_generator.rb +2 -2
  48. data/generators/web/web_generator.rb +2 -2
  49. data/howitzer.gemspec +3 -1
  50. data/lib/howitzer/capybara_helpers.rb +25 -8
  51. data/lib/howitzer/gmail_api.rb +7 -0
  52. data/lib/howitzer/gmail_api/client.rb +22 -0
  53. data/lib/howitzer/mail_adapters/gmail.rb +93 -0
  54. data/lib/howitzer/mail_adapters/mailgun.rb +2 -2
  55. data/lib/howitzer/mail_adapters/mailtrap.rb +105 -0
  56. data/lib/howitzer/mailtrap_api.rb +7 -0
  57. data/lib/howitzer/mailtrap_api/client.rb +52 -0
  58. data/lib/howitzer/version.rb +1 -1
  59. data/lib/howitzer/web/page.rb +13 -1
  60. data/lib/howitzer/web/page_dsl.rb +1 -1
  61. data/spec/config/custom.yml +1 -1
  62. data/spec/spec_helper.rb +1 -0
  63. data/spec/unit/generators/base_generator_spec.rb +23 -12
  64. data/spec/unit/generators/config_generator_spec.rb +27 -6
  65. data/spec/unit/generators/cucumber_generator_spec.rb +8 -8
  66. data/spec/unit/generators/emails_generator_spec.rb +2 -2
  67. data/spec/unit/generators/prerequisites_generator_spec.rb +7 -7
  68. data/spec/unit/generators/root_generator_spec.rb +25 -22
  69. data/spec/unit/generators/rspec_generator_spec.rb +4 -4
  70. data/spec/unit/generators/tasks_generator_spec.rb +2 -2
  71. data/spec/unit/generators/turnip_generator_spec.rb +7 -7
  72. data/spec/unit/generators/web_generator_spec.rb +3 -3
  73. data/spec/unit/lib/capybara_helpers_spec.rb +2 -1
  74. data/spec/unit/lib/gmail_api/client_spec.rb +26 -0
  75. data/spec/unit/lib/mail_adapters/gmail_spec.rb +128 -0
  76. data/spec/unit/lib/mail_adapters/mailgun_spec.rb +13 -18
  77. data/spec/unit/lib/mail_adapters/mailtrap_spec.rb +130 -0
  78. data/spec/unit/lib/mailgun_api/client_spec.rb +31 -9
  79. data/spec/unit/lib/mailtrap_api/client_spec.rb +67 -0
  80. data/spec/unit/lib/web/page_spec.rb +30 -1
  81. metadata +63 -8
  82. data/features/support/transformers.rb +0 -3
  83. data/spec/support/mailgun_unit_client.rb +0 -68
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: bb8410811f708378094fa35c54437e100e62efc6
4
- data.tar.gz: 9b2fa233a0ccc0ce63c8a4f410a053228dd6bace
3
+ metadata.gz: 39ab334fafa5a0aa09e730c1e1d04cf190fae186
4
+ data.tar.gz: 1533320ec072148e36f181a1eab235ae44c6cdc6
5
5
  SHA512:
6
- metadata.gz: 2ec55c0135ef0929e65808aa5a1d61aa62b96b40f29ab0ce13fb57b6c0dd14ff5730358d3a7812e66c999f758f3c9b4b6aeeb3c5b62b1547a6fbbe0e096c2e45
7
- data.tar.gz: 7f02cc2ba7ffe493e812b84fa2167c120af2bd7f2238e88c334e70dd5fced7d5b9f8f1c0f0057dd47f3d944e0ae0e3f4b54cb2bc6dd5e9aceefadd20d9a9d126
6
+ metadata.gz: a80f2f50436fc008eec03015827aaa0eb8948d3b60e3c043501479abafa9642bc5621c461903ad70b962585396e23d3fbc8300c8e73a0a3e650ff0e4253eab74
7
+ data.tar.gz: 65ba1c76f707b5d8854b211eaae7c1a6374204310659d79cc4270f2d610453283faa14740f7c00d5d2d43203b5dd417af8a2321783933ee42d6e58a58d84e032
@@ -8,7 +8,7 @@ AllCops:
8
8
  LineLength:
9
9
  Max: 120
10
10
 
11
- Style/CaseIndentation:
11
+ Layout/CaseIndentation:
12
12
  Enabled: false
13
13
 
14
14
  Style/EmptyElse:
@@ -18,11 +18,17 @@ Lint/AmbiguousRegexpLiteral:
18
18
  Enabled: false
19
19
 
20
20
  Lint/AmbiguousBlockAssociation:
21
- Enabled: false
21
+ Enabled: false
22
+
23
+ Lint/RescueWithoutErrorClass:
24
+ Enabled: false
22
25
 
23
26
  Style/CaseEquality:
24
27
  Enabled: false
25
28
 
29
+ Style/YodaCondition:
30
+ Enabled: false
31
+
26
32
  MethodLength:
27
33
  Max: 30
28
34
 
@@ -2,6 +2,6 @@ language: ruby
2
2
  before_install:
3
3
  - gem install bundler
4
4
  rvm:
5
- - 2.2.7
6
- - 2.3.4
7
- - 2.4.1
5
+ - 2.2.8
6
+ - 2.3.5
7
+ - 2.4.2
@@ -1,8 +1,24 @@
1
- ## [In git](https://github.com/strongqa/howitzer/compare/v2.0.3...master)
1
+ ## [In git](https://github.com/strongqa/howitzer/compare/v2.1.0...master)
2
2
 
3
3
  ### New Features
4
4
 
5
- ### Bugfixes
5
+ ### Bug-fixes
6
+
7
+ ## [v2.1.0](https://github.com/strongqa/howitzer/compare/v2.0.3...v2.1.0)
8
+
9
+ ### New Features
10
+ - Integrate CrossBrowserTesting
11
+ - Add Mailtrap support
12
+ - Add Gmail support
13
+ - Add Colorized output
14
+ - Add new option **user_agent** to allow custom user agent setup
15
+ - **mailgun_sleep_time** deprecated, **mail_sleep_time** used instead for all mail adapters
16
+ - Split Capybara drivers configuration to separate files
17
+ - Migrate FactoryGirl to FactoryBot
18
+ - Support Cucumber 3
19
+
20
+ ### Bug-fixes
21
+ - [#231](https://github.com/strongqa/howitzer/issues/231) **window_maximized** option fixed for chrome browser on MacOS
6
22
 
7
23
  ## [v2.0.3](https://github.com/strongqa/howitzer/compare/v2.0.2...v2.0.3)
8
24
 
@@ -11,7 +27,7 @@
11
27
  - Stop supported **mailgun_idle_timeout** deprecated setting
12
28
  - Added maintenance instructions for releasing
13
29
 
14
- ### Bugfixes
30
+ ### Bug-fixes
15
31
  - [#222](https://github.com/strongqa/howitzer/issues/222) fix issue with incorrect iframe scope identifying
16
32
 
17
33
  ## [v2.0.2](https://github.com/strongqa/howitzer/compare/v2.0.1...v2.0.2)
@@ -26,7 +42,7 @@
26
42
  - Add element_presence argument validation
27
43
  - Review and improve tests quality
28
44
 
29
- ### Bugfixes
45
+ ### Bug-fixes
30
46
  - Fix element capybara options merging
31
47
  - [#211](https://github.com/strongqa/howitzer/issues/211) Validation for iframe does not operate as intended
32
48
  - [#210](https://github.com/strongqa/howitzer/issues/210) Options like "wait" can not be used with iframe methods
@@ -42,7 +58,7 @@
42
58
  - Implement wait_for_xxx_element method for sync
43
59
  - Implement within_xxx_element method like Capybara.within
44
60
 
45
- ### Bugfixes
61
+ ### Bug-fixes
46
62
  - [#188](https://github.com/strongqa/howitzer/issues/188) Page validation by element presence does not work properly
47
63
  - [#191](https://github.com/strongqa/howitzer/issues/191) Generated project is broken
48
64
  - [#195](https://github.com/strongqa/howitzer/issues/195) Incorrect parameters passing in lambda locators
@@ -54,7 +70,7 @@
54
70
  ## [v2.0.0](https://github.com/strongqa/howitzer/compare/v1.1.1...v2.0.0)
55
71
 
56
72
  ### New Features
57
- - Added REST API prerequisites with FactoryGirl
73
+ - Added REST API prerequisites with FactoryBot
58
74
  - Added Turnip supporting
59
75
  - Restricted using several bdd frameworks at the same time
60
76
  - Removed Opera browser supporting
@@ -80,7 +96,7 @@
80
96
 
81
97
  ## [v1.1.1](https://github.com/strongqa/howitzer/compare/v1.1.0...v1.1.1)
82
98
 
83
- ### Bugfixes
99
+ ### Bug-fixes
84
100
  - fixed problem with Mailgun
85
101
  - fixed problems with gems
86
102
 
@@ -103,7 +119,7 @@
103
119
  - Integrated YardDoc
104
120
  - Integrated Gitter
105
121
 
106
- ### Bugfixes
122
+ ### Bug-fixes
107
123
  - Fixed issue with loading ActiveSupport
108
124
 
109
125
  ## [v1.0.2](https://github.com/strongqa/howitzer/compare/v1.0.1...v1.0.2)
@@ -121,14 +137,14 @@
121
137
  - Rewritten command line interface and covered by acceptance tests fully
122
138
  - Simplified DataStorage clearing after each tests
123
139
 
124
- ### Bugfixes
140
+ ### Bug-fixes
125
141
  - Fixed reset session after each scenario against to IE
126
142
  - Corrected default Cucumber and Rspec formatters
127
143
  - Minor bug fixing and code refactoring
128
144
 
129
145
  ## [v1.0.1](https://github.com/strongqa/howitzer/compare/v1.0...v1.0.1)
130
146
 
131
- ### Bugfixes
147
+ ### Bug-fixes
132
148
  - Fixed unit tests
133
149
  - Fixed correct Ruby version supporting
134
150
 
@@ -145,7 +161,7 @@ It is major release, so there are many new features, refactoring, unit tests, co
145
161
 
146
162
  * Added supporting poltergeist driver
147
163
 
148
- ### Bugfixes
164
+ ### Bug-fixes
149
165
 
150
166
  * Fixed problem with dependencies
151
167
 
data/Gemfile CHANGED
@@ -9,5 +9,6 @@ end
9
9
  gemspec
10
10
 
11
11
  group :development do
12
+ gem 'fakeweb', git: 'https://github.com/chrisk/fakeweb.git', branch: 'master'
12
13
  gem 'rubocop'
13
14
  end
@@ -0,0 +1,16 @@
1
+ ## Meta
2
+ Howitzer Version:
3
+ <!-- 2.0.3 -->
4
+ Driver and browser information:
5
+ <!-- selenium 3.4 ChromeDriver 2.29.461571 Chrome 59 -->
6
+ Gem Versions:
7
+ <!-- Gem versions involved in the issue -->
8
+
9
+ ## Expected Behavior
10
+
11
+ ## Actual Behavior
12
+
13
+ ## Steps to reproduce
14
+ <!--
15
+ Please be sure to include the code that is creating the issue along with HTML the code is being run against
16
+ -->
data/README.md CHANGED
@@ -25,7 +25,8 @@
25
25
  - Fast installation and configuration of the complete testing infrastructure (takes less than 5 minutes).
26
26
  - Elegant, intuitive and powerful Ruby language underneath.
27
27
  - Possibility to choose your favorite BDD tool (Cucumber, RSpec or Turnip).
28
- - Integration with SauceLabs, Testingbot, BrowserStack and MailGun web services.
28
+ - Integration with SauceLabs, Testingbot, BrowserStack, CrossBrowserTesting cloud services.
29
+ - Integration with MailGun, Gmail, Mailtrap email services.
29
30
  - Easy tests support based on the best patterns, techniques, principles.
30
31
  - Ability to execute tests against to both browserless driver and actual browsers with no changes in your tests.
31
32
 
data/Rakefile CHANGED
@@ -15,8 +15,24 @@ Cucumber::Rake::Task.new(:cucumber, 'Run all cucumber features') do |t|
15
15
  t.fork = false
16
16
  end
17
17
 
18
+ RuboCop::RakeTask.new
19
+
18
20
  YARD::Rake::YardocTask.new { |_t| }
19
21
 
20
- RuboCop::RakeTask.new
22
+ namespace :yard do
23
+ desc 'Validate yard coverage'
24
+ task :validate do
25
+ log = StringIO.new
26
+ YARD::Logger.instance(log)
27
+ doc = YARD::CLI::Yardoc.new
28
+ doc.use_document_file = false
29
+ doc.use_yardopts_file = false
30
+ doc.generate = false
31
+ doc.run('--list-undoc')
32
+ output = log.string
33
+ puts output
34
+ exit(1) unless output.include?('100.00% documented')
35
+ end
36
+ end
21
37
 
22
- task default: %i[rubocop spec cucumber]
38
+ task default: %i[rubocop yard:validate spec cucumber]
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
+ require 'colorized_string'
2
3
  require 'gli'
3
4
  require_relative '../lib/howitzer/version'
4
5
 
@@ -26,9 +27,9 @@ module HowitzerCli
26
27
  validate_options(options)
27
28
  load_generators
28
29
  path_to_dir = File.join(Dir.pwd, args.first)
29
- puts ' * New project directory creation ...'
30
+ puts ColorizedString.new(' * New project directory creation ...').light_cyan
30
31
  Dir.mkdir(path_to_dir)
31
- puts " Created new './#{args.first}' folder"
32
+ puts " #{ColorizedString.new('Created').light_green} './#{args.first}' folder"
32
33
  Dir.chdir(path_to_dir)
33
34
  Howitzer::ConfigGenerator.new(options)
34
35
  Howitzer::WebGenerator.new(options)
@@ -43,9 +44,9 @@ module HowitzerCli
43
44
  elsif options['turnip']
44
45
  Howitzer::TurnipGenerator.new(options)
45
46
  end
46
- puts '[WARN] Extra parameters were skipped' if args.size > 1
47
+ puts ColorizedString.new('[WARN] Extra parameters were skipped').yellow if args.size > 1
47
48
  elsif args.size.zero?
48
- exit_now!('Please specify <PROJECT NAME>', 64)
49
+ exit_now!(ColorizedString.new('Please specify <PROJECT NAME>').red, 64)
49
50
  end
50
51
  end
51
52
  end
@@ -80,11 +81,11 @@ module HowitzerCli
80
81
  def validate_options(options)
81
82
  return if [options[:cucumber], options[:rspec], options[:turnip]].count { |el| el } == 1
82
83
 
83
- exit_now!('Provide --cucumber, --rspec or --turnip option', 64)
84
+ exit_now!(ColorizedString.new('Provide --cucumber, --rspec or --turnip option').red, 64)
84
85
  end
85
86
 
86
87
  def check_project_presence
87
- exit_now!('Current directory is not Howitzer project', 126) unless howitzer_project?
88
+ exit_now!(ColorizedString.new('Current directory is not Howitzer project').red, 126) unless howitzer_project?
88
89
  end
89
90
 
90
91
  def howitzer_project?
@@ -2,7 +2,7 @@ Feature: Howitzer CLI Help
2
2
 
3
3
  Scenario Outline: Run with help global option
4
4
  When I run `howitzer <option>`
5
- Then the output should contain exactly:
5
+ Then the output should be exactly:
6
6
  """
7
7
  NAME
8
8
  howitzer - Ruby based framework for acceptance testing
@@ -54,12 +54,22 @@ Feature: Howitzer CLI New Project Creation
54
54
  Then the output should contain exactly:
55
55
  """
56
56
  * New project directory creation ...
57
- Created new './test_automation' folder
57
+ Created './test_automation' folder
58
58
  * Config files generation ...
59
59
  Added 'config/boot.rb' file
60
60
  Added 'config/custom.yml' file
61
61
  Added 'config/capybara.rb' file
62
62
  Added 'config/default.yml' file
63
+ Added 'config/drivers/browserstack.rb' file
64
+ Added 'config/drivers/crossbrowsertesting.rb' file
65
+ Added 'config/drivers/headless_chrome.rb' file
66
+ Added 'config/drivers/phantomjs.rb' file
67
+ Added 'config/drivers/poltergeist.rb' file
68
+ Added 'config/drivers/sauce.rb' file
69
+ Added 'config/drivers/selenium.rb' file
70
+ Added 'config/drivers/selenium_grid.rb' file
71
+ Added 'config/drivers/testingbot.rb' file
72
+ Added 'config/drivers/webkit.rb' file
63
73
  * PageOriented pattern structure generation ...
64
74
  Added 'web/pages/example_page.rb' file
65
75
  Added 'web/sections/menu_section.rb' file
@@ -73,7 +83,7 @@ Feature: Howitzer CLI New Project Creation
73
83
  Added 'Rakefile' file
74
84
  Added template 'Gemfile.erb' with params '{:r=>true, :rspec=>true, :c=>false, :cucumber=>false, :t=>false, :turnip=>false}' to destination 'Gemfile'
75
85
  * Pre-requisites integration to the framework ...
76
- Added 'prerequisites/factory_girl.rb' file
86
+ Added 'prerequisites/factory_bot.rb' file
77
87
  Added 'prerequisites/factories/users.rb' file
78
88
  Added 'prerequisites/models/base.rb' file
79
89
  Added 'prerequisites/models/user.rb' file
@@ -92,7 +102,7 @@ Feature: Howitzer CLI New Project Creation
92
102
  | test_automation/emails/example_email.rb |
93
103
  | test_automation/web/sections/menu_section.rb |
94
104
  | test_automation/web/pages/example_page.rb |
95
- | test_automation/prerequisites/factory_girl.rb |
105
+ | test_automation/prerequisites/factory_bot.rb |
96
106
  | test_automation/prerequisites/factories/users.rb |
97
107
  | test_automation/prerequisites/models/base.rb |
98
108
  | test_automation/prerequisites/models/user.rb |
@@ -115,12 +125,22 @@ Feature: Howitzer CLI New Project Creation
115
125
  Then the output should contain exactly:
116
126
  """
117
127
  * New project directory creation ...
118
- Created new './test_automation' folder
128
+ Created './test_automation' folder
119
129
  * Config files generation ...
120
130
  Added 'config/boot.rb' file
121
131
  Added 'config/custom.yml' file
122
132
  Added 'config/capybara.rb' file
123
133
  Added 'config/default.yml' file
134
+ Added 'config/drivers/browserstack.rb' file
135
+ Added 'config/drivers/crossbrowsertesting.rb' file
136
+ Added 'config/drivers/headless_chrome.rb' file
137
+ Added 'config/drivers/phantomjs.rb' file
138
+ Added 'config/drivers/poltergeist.rb' file
139
+ Added 'config/drivers/sauce.rb' file
140
+ Added 'config/drivers/selenium.rb' file
141
+ Added 'config/drivers/selenium_grid.rb' file
142
+ Added 'config/drivers/testingbot.rb' file
143
+ Added 'config/drivers/webkit.rb' file
124
144
  * PageOriented pattern structure generation ...
125
145
  Added 'web/pages/example_page.rb' file
126
146
  Added 'web/sections/menu_section.rb' file
@@ -134,7 +154,7 @@ Feature: Howitzer CLI New Project Creation
134
154
  Added 'Rakefile' file
135
155
  Added template 'Gemfile.erb' with params '{:c=>true, :cucumber=>true, :r=>false, :rspec=>false, :t=>false, :turnip=>false}' to destination 'Gemfile'
136
156
  * Pre-requisites integration to the framework ...
137
- Added 'prerequisites/factory_girl.rb' file
157
+ Added 'prerequisites/factory_bot.rb' file
138
158
  Added 'prerequisites/factories/users.rb' file
139
159
  Added 'prerequisites/models/base.rb' file
140
160
  Added 'prerequisites/models/user.rb' file
@@ -161,7 +181,7 @@ Feature: Howitzer CLI New Project Creation
161
181
  | test_automation/features/example.feature |
162
182
  | test_automation/web/sections/menu_section.rb |
163
183
  | test_automation/web/pages/example_page.rb |
164
- | test_automation/prerequisites/factory_girl.rb |
184
+ | test_automation/prerequisites/factory_bot.rb |
165
185
  | test_automation/prerequisites/factories/users.rb |
166
186
  | test_automation/prerequisites/models/base.rb |
167
187
  | test_automation/prerequisites/models/user.rb |
@@ -183,12 +203,22 @@ Feature: Howitzer CLI New Project Creation
183
203
  Then the output should contain exactly:
184
204
  """
185
205
  * New project directory creation ...
186
- Created new './test_automation' folder
206
+ Created './test_automation' folder
187
207
  * Config files generation ...
188
208
  Added 'config/boot.rb' file
189
209
  Added 'config/custom.yml' file
190
210
  Added 'config/capybara.rb' file
191
211
  Added 'config/default.yml' file
212
+ Added 'config/drivers/browserstack.rb' file
213
+ Added 'config/drivers/crossbrowsertesting.rb' file
214
+ Added 'config/drivers/headless_chrome.rb' file
215
+ Added 'config/drivers/phantomjs.rb' file
216
+ Added 'config/drivers/poltergeist.rb' file
217
+ Added 'config/drivers/sauce.rb' file
218
+ Added 'config/drivers/selenium.rb' file
219
+ Added 'config/drivers/selenium_grid.rb' file
220
+ Added 'config/drivers/testingbot.rb' file
221
+ Added 'config/drivers/webkit.rb' file
192
222
  * PageOriented pattern structure generation ...
193
223
  Added 'web/pages/example_page.rb' file
194
224
  Added 'web/sections/menu_section.rb' file
@@ -202,7 +232,7 @@ Feature: Howitzer CLI New Project Creation
202
232
  Added 'Rakefile' file
203
233
  Added template 'Gemfile.erb' with params '{:t=>true, :turnip=>true, :c=>false, :cucumber=>false, :r=>false, :rspec=>false}' to destination 'Gemfile'
204
234
  * Pre-requisites integration to the framework ...
205
- Added 'prerequisites/factory_girl.rb' file
235
+ Added 'prerequisites/factory_bot.rb' file
206
236
  Added 'prerequisites/factories/users.rb' file
207
237
  Added 'prerequisites/models/base.rb' file
208
238
  Added 'prerequisites/models/user.rb' file
@@ -293,12 +323,22 @@ Feature: Howitzer CLI New Project Creation
293
323
  Then the output should contain exactly:
294
324
  """
295
325
  * New project directory creation ...
296
- Created new './test_automation' folder
326
+ Created './test_automation' folder
297
327
  * Config files generation ...
298
328
  Added 'config/boot.rb' file
299
329
  Added 'config/custom.yml' file
300
330
  Added 'config/capybara.rb' file
301
331
  Added 'config/default.yml' file
332
+ Added 'config/drivers/browserstack.rb' file
333
+ Added 'config/drivers/crossbrowsertesting.rb' file
334
+ Added 'config/drivers/headless_chrome.rb' file
335
+ Added 'config/drivers/phantomjs.rb' file
336
+ Added 'config/drivers/poltergeist.rb' file
337
+ Added 'config/drivers/sauce.rb' file
338
+ Added 'config/drivers/selenium.rb' file
339
+ Added 'config/drivers/selenium_grid.rb' file
340
+ Added 'config/drivers/testingbot.rb' file
341
+ Added 'config/drivers/webkit.rb' file
302
342
  * PageOriented pattern structure generation ...
303
343
  Added 'web/pages/example_page.rb' file
304
344
  Added 'web/sections/menu_section.rb' file
@@ -312,7 +352,7 @@ Feature: Howitzer CLI New Project Creation
312
352
  Added 'Rakefile' file
313
353
  Added template 'Gemfile.erb' with params '{:r=>true, :rspec=>true, :c=>false, :cucumber=>false, :t=>false, :turnip=>false}' to destination 'Gemfile'
314
354
  * Pre-requisites integration to the framework ...
315
- Added 'prerequisites/factory_girl.rb' file
355
+ Added 'prerequisites/factory_bot.rb' file
316
356
  Added 'prerequisites/factories/users.rb' file
317
357
  Added 'prerequisites/models/base.rb' file
318
358
  Added 'prerequisites/models/user.rb' file
@@ -331,7 +371,7 @@ Feature: Howitzer CLI New Project Creation
331
371
  | test_automation/emails/example_email.rb |
332
372
  | test_automation/web/sections/menu_section.rb |
333
373
  | test_automation/web/pages/example_page.rb |
334
- | test_automation/prerequisites/factory_girl.rb |
374
+ | test_automation/prerequisites/factory_bot.rb |
335
375
  | test_automation/prerequisites/factories/users.rb |
336
376
  | test_automation/prerequisites/models/base.rb |
337
377
  | test_automation/prerequisites/models/user.rb |
@@ -13,6 +13,16 @@ Feature: Howitzer CLI Update Existing Project
13
13
  Identical 'config/custom.yml' file
14
14
  Identical 'config/capybara.rb' file
15
15
  Added 'config/default.yml' file
16
+ Identical 'config/drivers/browserstack.rb' file
17
+ Identical 'config/drivers/crossbrowsertesting.rb' file
18
+ Identical 'config/drivers/headless_chrome.rb' file
19
+ Identical 'config/drivers/phantomjs.rb' file
20
+ Identical 'config/drivers/poltergeist.rb' file
21
+ Identical 'config/drivers/sauce.rb' file
22
+ Identical 'config/drivers/selenium.rb' file
23
+ Identical 'config/drivers/selenium_grid.rb' file
24
+ Identical 'config/drivers/testingbot.rb' file
25
+ Identical 'config/drivers/webkit.rb' file
16
26
  * PageOriented pattern structure generation ...
17
27
  Identical 'web/pages/example_page.rb' file
18
28
  Identical 'web/sections/menu_section.rb' file
@@ -21,7 +31,7 @@ Feature: Howitzer CLI Update Existing Project
21
31
  * Email example generation ...
22
32
  Identical '/emails/example_email.rb' file
23
33
  * Pre-requisites integration to the framework ...
24
- Identical 'prerequisites/factory_girl.rb' file
34
+ Identical 'prerequisites/factory_bot.rb' file
25
35
  Identical 'prerequisites/factories/users.rb' file
26
36
  Identical 'prerequisites/models/base.rb' file
27
37
  Identical 'prerequisites/models/user.rb' file
@@ -47,6 +57,16 @@ Feature: Howitzer CLI Update Existing Project
47
57
  Identical 'config/custom.yml' file
48
58
  Identical 'config/capybara.rb' file
49
59
  Identical 'config/default.yml' file
60
+ Identical 'config/drivers/browserstack.rb' file
61
+ Identical 'config/drivers/crossbrowsertesting.rb' file
62
+ Identical 'config/drivers/headless_chrome.rb' file
63
+ Identical 'config/drivers/phantomjs.rb' file
64
+ Identical 'config/drivers/poltergeist.rb' file
65
+ Identical 'config/drivers/sauce.rb' file
66
+ Identical 'config/drivers/selenium.rb' file
67
+ Identical 'config/drivers/selenium_grid.rb' file
68
+ Identical 'config/drivers/testingbot.rb' file
69
+ Identical 'config/drivers/webkit.rb' file
50
70
  * PageOriented pattern structure generation ...
51
71
  Identical 'web/pages/example_page.rb' file
52
72
  Identical 'web/sections/menu_section.rb' file
@@ -55,7 +75,7 @@ Feature: Howitzer CLI Update Existing Project
55
75
  * Email example generation ...
56
76
  Identical '/emails/example_email.rb' file
57
77
  * Pre-requisites integration to the framework ...
58
- Identical 'prerequisites/factory_girl.rb' file
78
+ Identical 'prerequisites/factory_bot.rb' file
59
79
  Identical 'prerequisites/factories/users.rb' file
60
80
  Identical 'prerequisites/models/base.rb' file
61
81
  Identical 'prerequisites/models/user.rb' file
@@ -85,6 +105,16 @@ Feature: Howitzer CLI Update Existing Project
85
105
  Identical 'config/custom.yml' file
86
106
  Identical 'config/capybara.rb' file
87
107
  Added 'config/default.yml' file
108
+ Identical 'config/drivers/browserstack.rb' file
109
+ Identical 'config/drivers/crossbrowsertesting.rb' file
110
+ Identical 'config/drivers/headless_chrome.rb' file
111
+ Identical 'config/drivers/phantomjs.rb' file
112
+ Identical 'config/drivers/poltergeist.rb' file
113
+ Identical 'config/drivers/sauce.rb' file
114
+ Identical 'config/drivers/selenium.rb' file
115
+ Identical 'config/drivers/selenium_grid.rb' file
116
+ Identical 'config/drivers/testingbot.rb' file
117
+ Identical 'config/drivers/webkit.rb' file
88
118
  * PageOriented pattern structure generation ...
89
119
  Identical 'web/pages/example_page.rb' file
90
120
  Identical 'web/sections/menu_section.rb' file
@@ -93,7 +123,7 @@ Feature: Howitzer CLI Update Existing Project
93
123
  * Email example generation ...
94
124
  Identical '/emails/example_email.rb' file
95
125
  * Pre-requisites integration to the framework ...
96
- Identical 'prerequisites/factory_girl.rb' file
126
+ Identical 'prerequisites/factory_bot.rb' file
97
127
  Identical 'prerequisites/factories/users.rb' file
98
128
  Identical 'prerequisites/models/base.rb' file
99
129
  Identical 'prerequisites/models/user.rb' file
@@ -125,6 +155,16 @@ Feature: Howitzer CLI Update Existing Project
125
155
  Identical 'config/custom.yml' file
126
156
  Identical 'config/capybara.rb' file
127
157
  Identical 'config/default.yml' file
158
+ Identical 'config/drivers/browserstack.rb' file
159
+ Identical 'config/drivers/crossbrowsertesting.rb' file
160
+ Identical 'config/drivers/headless_chrome.rb' file
161
+ Identical 'config/drivers/phantomjs.rb' file
162
+ Identical 'config/drivers/poltergeist.rb' file
163
+ Identical 'config/drivers/sauce.rb' file
164
+ Identical 'config/drivers/selenium.rb' file
165
+ Identical 'config/drivers/selenium_grid.rb' file
166
+ Identical 'config/drivers/testingbot.rb' file
167
+ Identical 'config/drivers/webkit.rb' file
128
168
  * PageOriented pattern structure generation ...
129
169
  Identical 'web/pages/example_page.rb' file
130
170
  Identical 'web/sections/menu_section.rb' file
@@ -133,7 +173,7 @@ Feature: Howitzer CLI Update Existing Project
133
173
  * Email example generation ...
134
174
  Identical '/emails/example_email.rb' file
135
175
  * Pre-requisites integration to the framework ...
136
- Identical 'prerequisites/factory_girl.rb' file
176
+ Identical 'prerequisites/factory_bot.rb' file
137
177
  Identical 'prerequisites/factories/users.rb' file
138
178
  Identical 'prerequisites/models/base.rb' file
139
179
  Identical 'prerequisites/models/user.rb' file