blueberry_rails 0.4.1 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.circleci/config.yml +47 -0
- data/.eslintrc +21 -0
- data/.hound.yml +0 -3
- data/.rubocop.yml +22 -13
- data/.ruby-version +1 -1
- data/README.md +1 -53
- data/blueberry_rails.gemspec +2 -2
- data/lib/blueberry_rails/app_builder.rb +45 -74
- data/lib/blueberry_rails/generators/app_generator.rb +21 -25
- data/lib/blueberry_rails/version.rb +3 -3
- data/spec/blueberry_rails_spec.rb +7 -23
- data/templates/Gemfile_custom.erb +24 -39
- data/templates/Procfile +1 -0
- data/templates/app.json.erb +2 -2
- data/templates/circle.yml.erb +68 -10
- data/templates/config/initializers/translation_engine.rb +1 -1
- data/templates/gitignore_custom.erb +7 -5
- data/templates/puma.rb +2 -3
- data/templates/spec/controllers/root_controller_spec.rb +2 -4
- data/templates/spec/drivers.rb +16 -0
- data/templates/spec/factories/administrators.rb +2 -2
- data/templates/spec/factories/users.rb +2 -2
- data/templates/spec/factories_spec.rb +3 -3
- data/templates/spec/factory_bot_syntax.rb +3 -0
- data/templates/spec/spec_helper.rb +0 -7
- data/templates/views/layouts/admin.html.slim.erb +3 -3
- data/templates/views/layouts/application.html.slim.erb +3 -3
- data/templates/views/layouts/mailer.html.slim.erb +7 -0
- metadata +13 -68
- data/circle.yml +0 -5
- data/templates/admin_assets/javascripts/admin.coffee +0 -6
- data/templates/admin_assets/javascripts/admin/.keep +0 -0
- data/templates/admin_assets/stylesheets/admin.sass +0 -4
- data/templates/admin_assets/stylesheets/admin/.keep +0 -0
- data/templates/assets/icons/_font_icons.scss +0 -18
- data/templates/assets/images/blueberry-logo.png +0 -0
- data/templates/assets/javascripts/application.coffee +0 -6
- data/templates/assets/javascripts/common/.keep +0 -0
- data/templates/assets/javascripts/frontend/.keep +0 -0
- data/templates/assets/stylesheets/application.sass +0 -9
- data/templates/assets/stylesheets/frontend/base/buttons.sass +0 -3
- data/templates/assets/stylesheets/frontend/base/typo.sass +0 -3
- data/templates/assets/stylesheets/frontend/common/bootstrap-ms.sass +0 -128
- data/templates/assets/stylesheets/frontend/common/bootstrap-override.sass +0 -3
- data/templates/assets/stylesheets/frontend/common/bootstrap.sass +0 -50
- data/templates/assets/stylesheets/frontend/common/variables.sass +0 -37
- data/templates/assets/stylesheets/frontend/components/.keep +0 -0
- data/templates/assets/stylesheets/frontend/components/blocks.sass +0 -19
- data/templates/assets/stylesheets/frontend/components/navbar.sass +0 -0
- data/templates/assets/stylesheets/frontend/layout/body.sass +0 -3
- data/templates/assets/stylesheets/frontend/layout/footer.sass +0 -3
- data/templates/assets/stylesheets/frontend/layout/header.sass +0 -3
- data/templates/assets/stylesheets/frontend/pages/.keep +0 -0
- data/templates/assets/stylesheets/frontend/third-party/includes.sass +0 -1
- data/templates/assets/stylesheets/frontend/utils/functions.sass +0 -23
- data/templates/assets/stylesheets/frontend/utils/make-columns.sass +0 -67
- data/templates/assets/stylesheets/frontend/utils/mixins.sass +0 -29
- data/templates/assets/stylesheets/frontend/utils/render-to.sass +0 -66
- data/templates/assets/stylesheets/frontend/utils/renderto-debug.sass +0 -22
- data/templates/gulp/application.js.coffee +0 -11
- data/templates/gulp/application.sass +0 -10
- data/templates/gulp/config.coffee +0 -47
- data/templates/gulp/global.coffee +0 -3
- data/templates/gulp/global.sass +0 -8
- data/templates/gulp/gulp_helper.rb +0 -16
- data/templates/gulp/gulpfile.js +0 -20
- data/templates/gulp/message.coffee +0 -1
- data/templates/gulp/package.json +0 -53
- data/templates/gulp/rev_manifest.rb +0 -5
- data/templates/gulp/tasks/browserSync.coffee +0 -6
- data/templates/gulp/tasks/browserify.coffee +0 -50
- data/templates/gulp/tasks/build.coffee +0 -25
- data/templates/gulp/tasks/clean.coffee +0 -6
- data/templates/gulp/tasks/default.coffee +0 -3
- data/templates/gulp/tasks/fontIcons/generateIconSass.coffee +0 -23
- data/templates/gulp/tasks/fontIcons/index.coffee +0 -9
- data/templates/gulp/tasks/fontIcons/template.sass +0 -33
- data/templates/gulp/tasks/images.coffee +0 -12
- data/templates/gulp/tasks/rev/index.coffee +0 -12
- data/templates/gulp/tasks/rev/rev-assets.coffee +0 -11
- data/templates/gulp/tasks/rev/rev-font-workaround.coffee +0 -49
- data/templates/gulp/tasks/sass.coffee +0 -24
- data/templates/gulp/tasks/watch.coffee +0 -14
- data/templates/gulp/tasks/watchify.coffee +0 -6
- data/templates/gulp/util/bundleLogger.coffee +0 -23
- data/templates/gulp/util/handleErrors.coffee +0 -11
- data/templates/secret_token.rb.erb +0 -18
- data/templates/spec/factory_girl_syntax.rb +0 -3
- data/templates/tasks/icons.rake +0 -19
@@ -25,18 +25,12 @@ module BlueberryRails
|
|
25
25
|
class_option :skip_turbolinks, type: :boolean, default: true,
|
26
26
|
desc: 'Skip turbolinks gem'
|
27
27
|
|
28
|
-
class_option :skip_bundle, type: :boolean, aliases: '-B', default:
|
28
|
+
class_option :skip_bundle, type: :boolean, aliases: '-B', default: false,
|
29
29
|
desc: 'Don\'t run bundle install'
|
30
30
|
|
31
|
-
class_option :gulp, type: :boolean, aliases: '-g', default: false,
|
32
|
-
desc: 'Include Gulp asset pipeline'
|
33
|
-
|
34
31
|
class_option :administration, type: :boolean, aliases: '-a', default: false,
|
35
32
|
desc: 'Include Admin part of application'
|
36
33
|
|
37
|
-
class_option :fontcustom, type: :boolean, aliases: '-fc', default: false,
|
38
|
-
desc: 'Include Fontcustom'
|
39
|
-
|
40
34
|
class_option :translation_engine, type: :boolean, aliases: '-te', default: false,
|
41
35
|
desc: 'Include Tranlsation Engine'
|
42
36
|
|
@@ -46,6 +40,9 @@ module BlueberryRails
|
|
46
40
|
class_option :heroku, type: :boolean, aliases: '-he', default: true,
|
47
41
|
desc: 'Heroku reviews app config'
|
48
42
|
|
43
|
+
class_option :webpack, type: :string, aliases: '-w', default: 'stimulus',
|
44
|
+
desc: 'Preconfigure for app-like JavaScript with Webpack (options: react/vue/angular/elm/stimulus)'
|
45
|
+
|
49
46
|
def finish_template
|
50
47
|
if options[:administration] && (!options[:devise] || !options[:bootstrap])
|
51
48
|
raise 'Administration depends on bootstrap and devise!'
|
@@ -60,20 +57,20 @@ module BlueberryRails
|
|
60
57
|
invoke :setup_development_environment
|
61
58
|
invoke :setup_test_environment
|
62
59
|
invoke :setup_staging_environment
|
60
|
+
invoke :setup_integration_environment
|
63
61
|
invoke :create_views
|
64
62
|
invoke :create_assets
|
65
63
|
invoke :configure_app
|
66
64
|
invoke :remove_routes_comment_lines
|
67
65
|
invoke :setup_gems
|
68
66
|
invoke :setup_git
|
69
|
-
invoke :setup_gulp
|
70
67
|
invoke :setup_admin
|
71
68
|
invoke :rake_tasks
|
72
69
|
invoke :setup_custom_errors
|
73
70
|
invoke :setup_initializers
|
74
|
-
invoke :setup_fontcustom
|
75
71
|
invoke :setup_heroku
|
76
72
|
invoke :setup_cache_and_compress
|
73
|
+
invoke :setup_linters
|
77
74
|
end
|
78
75
|
|
79
76
|
def customize_gemfile
|
@@ -112,7 +109,11 @@ module BlueberryRails
|
|
112
109
|
def setup_staging_environment
|
113
110
|
say 'Setting up the staging environment'
|
114
111
|
build :setup_staging_environment
|
115
|
-
|
112
|
+
end
|
113
|
+
|
114
|
+
def setup_integration_environment
|
115
|
+
say 'Setting up the integration environment'
|
116
|
+
build :setup_integration_environment
|
116
117
|
end
|
117
118
|
|
118
119
|
def setup_initializers
|
@@ -120,13 +121,6 @@ module BlueberryRails
|
|
120
121
|
build :copy_initializers
|
121
122
|
end
|
122
123
|
|
123
|
-
def setup_fontcustom
|
124
|
-
if options[:fontcustom]
|
125
|
-
say 'Setting up fontcustom'
|
126
|
-
build :copy_fontcustom_config
|
127
|
-
end
|
128
|
-
end
|
129
|
-
|
130
124
|
def setup_admin
|
131
125
|
if options[:administration]
|
132
126
|
build :setup_admin
|
@@ -156,7 +150,6 @@ module BlueberryRails
|
|
156
150
|
build :create_procfile
|
157
151
|
build :create_puma_config
|
158
152
|
build :add_ruby_version_file
|
159
|
-
build :hound_config
|
160
153
|
build :configure_i18n
|
161
154
|
build :configure_bin_setup
|
162
155
|
end
|
@@ -189,13 +182,6 @@ module BlueberryRails
|
|
189
182
|
build :init_git
|
190
183
|
end
|
191
184
|
|
192
|
-
def setup_gulp
|
193
|
-
if options[:gulp]
|
194
|
-
say 'Adding Gulp asset pipeline'
|
195
|
-
build :gulp_files
|
196
|
-
end
|
197
|
-
end
|
198
|
-
|
199
185
|
def setup_heroku
|
200
186
|
if options[:heroku]
|
201
187
|
say 'Add heroku reviews apps config'
|
@@ -203,6 +189,16 @@ module BlueberryRails
|
|
203
189
|
end
|
204
190
|
end
|
205
191
|
|
192
|
+
def setup_linters
|
193
|
+
say 'Setting up linters'
|
194
|
+
build :hound_config
|
195
|
+
end
|
196
|
+
|
197
|
+
def setup_cocoon
|
198
|
+
say 'Setting up Cocoon'
|
199
|
+
build :cocoon_config
|
200
|
+
end
|
201
|
+
|
206
202
|
def rake_tasks
|
207
203
|
build :copy_rake_tasks
|
208
204
|
end
|
@@ -21,9 +21,12 @@ class BlueberryRailsTest < Minitest::Test
|
|
21
21
|
assert_exist_file 'config/initializers/plurals.rb'
|
22
22
|
assert_exist_file '.hound.yml'
|
23
23
|
assert_exist_file '.rubocop.yml'
|
24
|
-
assert_exist_file '
|
24
|
+
assert_exist_file '.eslintrc'
|
25
|
+
assert_exist_file '.circleci/config.yml'
|
25
26
|
assert_exist_file '.rspec'
|
26
27
|
assert_exist_file 'app.json'
|
28
|
+
assert_exist_file 'spec/support/drivers.rb'
|
29
|
+
assert_file_have_content '.ruby-version', BlueberryRails::RUBY_VERSION
|
27
30
|
assert_file_have_content 'README.md', 'Test Project'
|
28
31
|
assert_file_have_content 'bin/setup', 'bundle install --deployment'
|
29
32
|
assert_file_have_content 'Procfile', 'bundle exec puma'
|
@@ -31,8 +34,10 @@ class BlueberryRailsTest < Minitest::Test
|
|
31
34
|
assert_file_have_content 'config/environments/production.rb', 'Cache-Control'
|
32
35
|
assert_file_have_content 'config/environments/production.rb', 'Rack::Deflater'
|
33
36
|
assert_file_have_content 'Guardfile', 'factories'
|
34
|
-
assert_file_have_content 'config/secrets.yml', 'staging'
|
35
37
|
assert_file_have_content 'config/initializers/airbrake.rb', 'config.blacklist_keys'
|
38
|
+
assert_file_have_content 'package.json', 'eslint'
|
39
|
+
assert_file_have_content 'package.json', 'cocoon'
|
40
|
+
assert_file_have_content 'app/javascript/packs/application.js', 'cocoon'
|
36
41
|
|
37
42
|
assert run_rake
|
38
43
|
end
|
@@ -82,27 +87,6 @@ class BlueberryRailsTest < Minitest::Test
|
|
82
87
|
assert run_rake
|
83
88
|
end
|
84
89
|
|
85
|
-
def test_rake_runs_with_fontcustom_option
|
86
|
-
create_project '--fontcustom'
|
87
|
-
|
88
|
-
assert_exist_file 'lib/tasks/icons.rake'
|
89
|
-
assert_exist_file 'fontcustom.yml'
|
90
|
-
assert_exist_file "app/assets/icons/_font_icons.scss"
|
91
|
-
|
92
|
-
assert run_rake
|
93
|
-
end
|
94
|
-
|
95
|
-
def test_rake_runs_with_gulp_option
|
96
|
-
create_project '--gulp'
|
97
|
-
|
98
|
-
assert_file_have_content 'config/environments/development.rb',
|
99
|
-
'config.assets.digest = false'
|
100
|
-
assert_exist_file 'gulp/tasks/default.coffee'
|
101
|
-
assert_exist_file 'gulpfile.js'
|
102
|
-
assert_exist_file 'package.json'
|
103
|
-
assert run_rake
|
104
|
-
end
|
105
|
-
|
106
90
|
def test_rake_runs_with_heroku_option
|
107
91
|
create_project '--heroku'
|
108
92
|
|
@@ -1,78 +1,63 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
|
+
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
|
2
3
|
|
3
4
|
ruby '<%= BlueberryRails::RUBY_VERSION %>'
|
4
5
|
|
5
6
|
gem 'airbrake'
|
6
|
-
|
7
|
-
gem '
|
8
|
-
<% end -%>
|
9
|
-
<% if options[:administration] -%>
|
10
|
-
gem 'blueberry_admin'
|
11
|
-
<% end -%>
|
12
|
-
gem 'coffee-rails', '~> 4.2'
|
7
|
+
gem 'bootsnap', require: false
|
8
|
+
gem 'cocoon', '~> 1.2'
|
13
9
|
<% if options[:devise] -%>
|
14
|
-
gem 'devise'
|
10
|
+
gem 'devise', '~> 4.5'
|
15
11
|
<% end -%>
|
16
|
-
gem 'dotenv-rails'
|
12
|
+
gem 'dotenv-rails', '~> 2.5'
|
13
|
+
gem 'draper', '~> 3.0'
|
17
14
|
gem 'flutie'
|
18
|
-
gem '
|
15
|
+
gem 'inky-rb', require: 'inky'
|
19
16
|
gem 'metamagic'
|
20
|
-
gem 'pg'
|
21
|
-
gem '
|
17
|
+
gem 'pg', '>= 0.18', '< 2.0'
|
18
|
+
gem 'premailer-rails', '~> 1.10', '>= 1.10.2'
|
19
|
+
gem 'puma', '~> 3.11'
|
22
20
|
gem 'rails', '~> <%= BlueberryRails::RAILS_VERSION %>'
|
23
|
-
gem 'sassc-rails'
|
24
|
-
gem 'simple_form'
|
25
|
-
gem 'slim-rails'
|
21
|
+
gem 'sassc-rails', '~> 2.0'
|
22
|
+
gem 'simple_form', '~> 4.1'
|
23
|
+
gem 'slim-rails', '~> 3.2'
|
26
24
|
<% if options[:translation_engine] -%>
|
27
25
|
gem 'translation_engine', github: 'blueberryapps/translation-engine'
|
28
26
|
<% end -%>
|
29
|
-
|
30
|
-
|
31
|
-
source 'https://rails-assets.org' do
|
32
|
-
<% if options[:bootstrap] -%>
|
33
|
-
gem 'rails-assets-bootstrap-sass'
|
27
|
+
<% unless options[:skip_turbolinks] -%>
|
28
|
+
gem 'turbolinks', '~> 5'
|
34
29
|
<% end -%>
|
35
|
-
|
36
|
-
|
30
|
+
gem 'uglifier', '>= 1.3.0'
|
31
|
+
gem 'webpacker', '~> 3.3'
|
37
32
|
|
38
33
|
group :development do
|
39
34
|
gem 'awesome_print'
|
40
|
-
gem 'better_errors'
|
41
|
-
gem 'binding_of_caller'
|
42
|
-
<% if options[:fontcustom] -%>
|
43
|
-
gem 'fontcustom'
|
44
|
-
<% end -%>
|
45
35
|
gem 'guard-rspec'
|
46
|
-
gem 'i18n_yaml_sorter'
|
47
36
|
gem 'image_optimizer', '~> 1.3.0'
|
48
37
|
gem 'listen', '~> 3.0.5'
|
49
|
-
gem 'mailcatcher'
|
50
38
|
gem 'pry-rails'
|
51
39
|
gem 'rails-i18n-debug', github: 'XeeD/rails-i18n-debug'
|
52
40
|
gem 'rubocop', require: false
|
53
41
|
gem 'spring'
|
54
42
|
gem 'spring-watcher-listen', '~> 2.0.0'
|
55
|
-
|
56
|
-
gem 'svg_optimizer'
|
57
|
-
<% end -%>
|
43
|
+
gem 'web-console', '>= 3.3.0'
|
58
44
|
end
|
59
45
|
|
60
46
|
group :development, :test do
|
61
|
-
gem '
|
47
|
+
gem 'factory_bot_rails', '~> 4.11'
|
62
48
|
gem 'pry-byebug'
|
63
49
|
gem 'pry-doc'
|
64
|
-
gem 'rspec-rails', '>= 3.
|
65
|
-
end
|
66
|
-
|
67
|
-
group :staging, :production do
|
68
|
-
gem 'newrelic_rpm', '>= 3.9.6'
|
50
|
+
gem 'rspec-rails', '>= 3.8'
|
69
51
|
end
|
70
52
|
|
71
53
|
group :test do
|
72
54
|
gem 'capybara-screenshot'
|
55
|
+
gem 'capybara-selenium'
|
73
56
|
gem 'database_cleaner'
|
74
57
|
gem 'launchy'
|
75
|
-
gem '
|
58
|
+
gem 'rails-controller-testing'
|
59
|
+
gem 'rspec_junit_formatter'
|
60
|
+
gem 'shoulda-matchers'
|
76
61
|
gem 'simplecov', require: false
|
77
62
|
gem 'webmock'
|
78
63
|
end
|
data/templates/Procfile
CHANGED
data/templates/app.json.erb
CHANGED
@@ -25,10 +25,10 @@
|
|
25
25
|
],
|
26
26
|
"buildpacks": [
|
27
27
|
{
|
28
|
-
"url": "
|
28
|
+
"url": "https://github.com/heroku/heroku-buildpack-activestorage-preview"
|
29
29
|
},
|
30
30
|
{
|
31
|
-
"url": "
|
31
|
+
"url": "urn:buildpack:heroku/ruby"
|
32
32
|
}
|
33
33
|
]
|
34
34
|
}
|
data/templates/circle.yml.erb
CHANGED
@@ -1,13 +1,71 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
1
|
+
version: 2
|
2
|
+
jobs:
|
3
|
+
build:
|
4
|
+
docker:
|
5
|
+
# specify the version you desire here
|
6
|
+
- image: circleci/ruby:<%= BlueberryRails::RUBY_VERSION %>-node-browsers
|
7
|
+
environment:
|
8
|
+
BUNDLE_JOBS: 3
|
9
|
+
BUNDLE_RETRY: 3
|
10
|
+
BUNDLE_PATH: vendor/bundle
|
11
|
+
RAILS_ENV: test
|
12
|
+
DATABASE_URL: "postgres://<%= app_name.gsub('_', '-') %>@localhost:5432/<%= app_name.gsub('_', '-') %>-test"
|
13
|
+
- image: circleci/postgres:9.5-alpine
|
14
|
+
environment:
|
15
|
+
POSTGRES_USER: <%= app_name.gsub('_', '-') %>
|
16
|
+
POSTGRES_DB: <%= app_name.gsub('_', '-') %>-test
|
17
|
+
POSTGRES_PASSWORD: ""
|
4
18
|
|
5
|
-
|
6
|
-
ruby:
|
7
|
-
version:
|
8
|
-
<%= BlueberryRails::RUBY_VERSION %>
|
19
|
+
working_directory: ~/repo
|
9
20
|
|
21
|
+
steps:
|
22
|
+
- checkout
|
10
23
|
|
11
|
-
|
12
|
-
|
13
|
-
|
24
|
+
- run:
|
25
|
+
name: Update bundler
|
26
|
+
command: sudo gem update bundler
|
27
|
+
|
28
|
+
# Download and cache dependencies
|
29
|
+
- restore_cache:
|
30
|
+
keys:
|
31
|
+
- v1-dependencies-{{ checksum "Gemfile.lock" }}
|
32
|
+
# fallback to using the latest cache if no exact match is found
|
33
|
+
- v1-dependencies-
|
34
|
+
|
35
|
+
- run:
|
36
|
+
name: install dependencies
|
37
|
+
command: |
|
38
|
+
bundle install --jobs=4 --retry=3 --path vendor/bundle
|
39
|
+
|
40
|
+
- save_cache:
|
41
|
+
paths:
|
42
|
+
- ./vendor/bundle
|
43
|
+
key: v1-dependencies-{{ checksum "Gemfile.lock" }}
|
44
|
+
|
45
|
+
- run:
|
46
|
+
name: Install yarn dependencies
|
47
|
+
command: yarn install
|
48
|
+
|
49
|
+
# Database setup
|
50
|
+
- run: bundle exec rails db:create
|
51
|
+
- run: bundle exec rails db:schema:load
|
52
|
+
|
53
|
+
# run tests!
|
54
|
+
- run:
|
55
|
+
name: run tests
|
56
|
+
command: |
|
57
|
+
mkdir /tmp/test-results
|
58
|
+
TEST_FILES="$(circleci tests glob "spec/**/*_spec.rb" | circleci tests split --split-by=timings)"
|
59
|
+
|
60
|
+
bundle exec rspec --format progress \
|
61
|
+
--format RspecJunitFormatter \
|
62
|
+
--out /tmp/test-results/rspec.xml \
|
63
|
+
--format progress \
|
64
|
+
$TEST_FILES
|
65
|
+
|
66
|
+
# collect reports
|
67
|
+
- store_test_results:
|
68
|
+
path: /tmp/test-results
|
69
|
+
- store_artifacts:
|
70
|
+
path: /tmp/test-results
|
71
|
+
destination: test-results
|
@@ -6,16 +6,18 @@
|
|
6
6
|
.env
|
7
7
|
.pry_history
|
8
8
|
.sass-cache/
|
9
|
-
|
9
|
+
.yarn-integrity
|
10
10
|
config/database.yml
|
11
|
+
config/master.key
|
11
12
|
db/*.sqlite3
|
12
13
|
log/*.log
|
14
|
+
node_modules
|
15
|
+
public/packs
|
16
|
+
public/packs-test
|
13
17
|
public/system
|
14
18
|
rerun.txt
|
19
|
+
storage/*
|
15
20
|
tags
|
16
21
|
tmp/*
|
17
22
|
tmp/**/*
|
18
|
-
|
19
|
-
node_modules
|
20
|
-
/public/assets/*
|
21
|
-
<% end -%>
|
23
|
+
yarn-debug.log*
|
data/templates/puma.rb
CHANGED
@@ -4,9 +4,8 @@ threads Integer(threads_count / 2), threads_count
|
|
4
4
|
|
5
5
|
preload_app!
|
6
6
|
|
7
|
-
|
8
|
-
|
9
|
-
environment ENV['RACK_ENV'] || 'development'
|
7
|
+
port ENV.fetch('PORT') { 3000 }
|
8
|
+
environment ENV.fetch('RACK_ENV') { 'development' }
|
10
9
|
|
11
10
|
on_worker_boot do
|
12
11
|
# Worker specific setup for Rails 4.1+
|
@@ -1,12 +1,10 @@
|
|
1
|
-
require '
|
2
|
-
|
3
|
-
describe RootController, type: :controller do
|
1
|
+
require 'rails_helper'
|
4
2
|
|
3
|
+
RSpec.describe RootController, type: :controller do
|
5
4
|
describe 'GET index' do
|
6
5
|
it 'returns http success' do
|
7
6
|
get :index
|
8
7
|
expect(response).to be_success
|
9
8
|
end
|
10
9
|
end
|
11
|
-
|
12
10
|
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require 'selenium/webdriver'
|
2
|
+
|
3
|
+
Capybara.register_driver :chrome do |app|
|
4
|
+
Capybara::Selenium::Driver.new(app, browser: :chrome)
|
5
|
+
end
|
6
|
+
|
7
|
+
Capybara.register_driver :headless_chrome do |app|
|
8
|
+
Capybara::Selenium::Driver.new app,
|
9
|
+
browser: :chrome,
|
10
|
+
desired_capabilities: Selenium::WebDriver::Remote::Capabilities.chrome(
|
11
|
+
chromeOptions: { args: %w(headless disable-gpu window-size=1366,768) }
|
12
|
+
)
|
13
|
+
end
|
14
|
+
|
15
|
+
Capybara.javascript_driver = :headless_chrome
|
16
|
+
# Capybara.javascript_driver = :chrome
|