make_it_so 0.4.5 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/Gemfile +2 -1
- data/README.md +2 -2
- data/lib/generators/rails_app_generator.rb +8 -12
- data/lib/make_it_so/command_line_interface.rb +1 -1
- data/lib/make_it_so/rails/app_builder.rb +13 -20
- data/lib/make_it_so/version.rb +1 -1
- data/make_it_so.gemspec +1 -3
- data/snippets/rails/js_jest_testing_deps.json +3 -4
- data/snippets/rails/{js_testing_deps.json → js_karma_jasmine_testing_deps.json} +4 -6
- data/snippets/rails/react_dependencies.json +11 -3
- data/spec/features/{user_generates_rails_spec.rb → rails/user_generates_rails_spec.rb} +123 -100
- data/spec/features/rails/user_generates_rails_with_karma_spec.rb +58 -0
- data/spec/features/rails/user_generates_rails_without_js_test_lib_spec.rb +51 -0
- data/spec/support/make_it_so_spec_helpers.rb +23 -0
- data/templates/rails/.babelrc +33 -0
- data/templates/rails/app/javascript/react/components/App.js +1 -1
- data/templates/rails/app/views/layouts/application.html.erb.tt +1 -8
- data/templates/rails/karma.conf.js +1 -1
- data/templates/rails/spec/javascript/support/enzyme.js +0 -2
- data/templates/rails/spec/javascript/testHelper.js +4 -0
- metadata +13 -44
- data/Appraisals +0 -4
- data/gemfiles/rails_4_0.gemfile +0 -11
- data/gemfiles/rails_4_0.gemfile.lock +0 -88
- data/gemfiles/rails_4_1.gemfile +0 -11
- data/gemfiles/rails_4_1.gemfile.lock +0 -92
- data/gemfiles/rails_4_2.gemfile +0 -11
- data/gemfiles/rails_4_2.gemfile.lock +0 -106
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 2eb6df0b9f858c51c806d331ae101abb19f4b4ce12403073c78499a751673722
|
4
|
+
data.tar.gz: 92d50506cb7e2dd187c1031b9851b1d32c2f79f72b61a77e0acbddf9c3bf30f5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7b67a140d54c639e3c2243179c73024e44931cfe45aa5b5e60b5b6c5b51a732c142e2ad73c05490db7dd8a00ddfb05f145f36b3a5be8f5b92b53f1382580b79f
|
7
|
+
data.tar.gz: 7f3b6b7c5ee3792f331f90d6922c13867bb48b2a79259ba02b254d0fc594b89646f930a6b196cd3767b49aabe121829e5f3c1078847b7cfc5f9276f89862bdb0
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -41,7 +41,7 @@ By default, the generator will create a Rails app with the following options act
|
|
41
41
|
- Postgres
|
42
42
|
- Foundation
|
43
43
|
- React
|
44
|
-
-
|
44
|
+
- Jest
|
45
45
|
|
46
46
|
To take advantage of view-specific javascript, inject a script tag at the end of the body tag. Javascript should always be the last thing loaded on the page. In view logic you can do the following:
|
47
47
|
|
@@ -53,7 +53,7 @@ var widget = new Something.Widget('foo');
|
|
53
53
|
<% end %>
|
54
54
|
```
|
55
55
|
|
56
|
-
|
56
|
+
Using the `--js-test-lib` flag, it is also possible to set up a Karma/Jasmine test framework instead of Jest (`--js-test-lib karma`) or to omit either framework (`--js-test-lib false`).
|
57
57
|
|
58
58
|
### Sinatra
|
59
59
|
|
@@ -52,15 +52,11 @@ module MakeItSo
|
|
52
52
|
default: true,
|
53
53
|
desc: 'Generate React setup'
|
54
54
|
|
55
|
-
class_option :
|
56
|
-
type: :
|
57
|
-
default:
|
58
|
-
desc:
|
59
|
-
|
60
|
-
class_option :jest,
|
61
|
-
type: :boolean,
|
62
|
-
default: false,
|
63
|
-
desc: 'Generate jest testing setup'
|
55
|
+
class_option :js_test_lib,
|
56
|
+
type: :string,
|
57
|
+
default: "jest",
|
58
|
+
desc:
|
59
|
+
"Generate Jest testing framework (default), Karma/Jasmine ('karma'), or no framework ('false')"
|
64
60
|
|
65
61
|
def initialize(*args)
|
66
62
|
super
|
@@ -106,13 +102,13 @@ module MakeItSo
|
|
106
102
|
build 'react'
|
107
103
|
end
|
108
104
|
|
109
|
-
if options[:jest
|
105
|
+
if options[:js_test_lib] == "jest"
|
110
106
|
build 'jest'
|
111
|
-
elsif options[:karma
|
107
|
+
elsif options[:js_test_lib] == "karma"
|
112
108
|
build 'karma'
|
113
109
|
end
|
114
110
|
|
115
|
-
if options[:react] || options[:
|
111
|
+
if options[:react] || options[:js_test_lib]
|
116
112
|
build 'yarn_install'
|
117
113
|
end
|
118
114
|
end
|
@@ -4,7 +4,7 @@ module MakeItSo
|
|
4
4
|
desc "rails <app_name>",
|
5
5
|
"generates a rails application based on your specifications"
|
6
6
|
option :devise, type: :boolean
|
7
|
-
option :
|
7
|
+
option :js_test_lib, default: "jest"
|
8
8
|
def rails(app_name)
|
9
9
|
MakeItSo::RailsAppGenerator.start(ARGV[1..-1])
|
10
10
|
end
|
@@ -66,6 +66,8 @@ module MakeItSo
|
|
66
66
|
|
67
67
|
json["scripts"] ||= {}
|
68
68
|
json["scripts"]["start"] = "./bin/webpack-dev-server"
|
69
|
+
|
70
|
+
json["dependencies"].delete("babel-preset-react")
|
69
71
|
end
|
70
72
|
|
71
73
|
inside 'app/javascript/packs' do
|
@@ -76,7 +78,7 @@ module MakeItSo
|
|
76
78
|
|
77
79
|
def karma
|
78
80
|
after_bundle do
|
79
|
-
unparsed_json = snippet('
|
81
|
+
unparsed_json = snippet('js_karma_jasmine_testing_deps.json')
|
80
82
|
parsed_json = JSON.parse(unparsed_json)
|
81
83
|
|
82
84
|
modify_json(package_json_file) do |json|
|
@@ -95,6 +97,9 @@ module MakeItSo
|
|
95
97
|
append_to_file '.gitignore' do
|
96
98
|
"coverage/*\n"
|
97
99
|
end
|
100
|
+
|
101
|
+
remove_file '.babelrc'
|
102
|
+
template '.babelrc'
|
98
103
|
end
|
99
104
|
end
|
100
105
|
|
@@ -131,18 +136,8 @@ module MakeItSo
|
|
131
136
|
})
|
132
137
|
end
|
133
138
|
|
134
|
-
|
135
|
-
|
136
|
-
json["env"] ||= {}
|
137
|
-
json["env"]["test"] ||= {}
|
138
|
-
json["env"]["test"].merge!({
|
139
|
-
"env": {
|
140
|
-
"test": {
|
141
|
-
"presets": ["react", "env"],
|
142
|
-
}
|
143
|
-
}
|
144
|
-
})
|
145
|
-
end
|
139
|
+
remove_file '.babelrc'
|
140
|
+
template '.babelrc'
|
146
141
|
end
|
147
142
|
end
|
148
143
|
|
@@ -251,7 +246,7 @@ module MakeItSo
|
|
251
246
|
#note: temporary fix that can be removed once devise progresses #beyond v4.4.3
|
252
247
|
# https://github.com/plataformatec/devise/pull/4869/files
|
253
248
|
inside 'config/initializers' do
|
254
|
-
insert_into_file 'devise.rb',
|
249
|
+
insert_into_file 'devise.rb',
|
255
250
|
after: "Devise.setup do |config|" do
|
256
251
|
" config.secret_key = Rails.application.secret_key_base\n"
|
257
252
|
end
|
@@ -278,14 +273,12 @@ module MakeItSo
|
|
278
273
|
end
|
279
274
|
|
280
275
|
def foundation_dependency
|
281
|
-
@generator.gem 'foundation-rails', '~> 5
|
276
|
+
@generator.gem 'foundation-rails', '~> 6.5'
|
282
277
|
|
283
278
|
after_bundle do
|
284
279
|
generate 'foundation:install foundation'
|
285
280
|
# foundation-rails generates an application layout so we
|
286
281
|
# must remove it
|
287
|
-
# there is a pull request open to skip this:
|
288
|
-
# https://github.com/zurb/foundation-rails/pull/108
|
289
282
|
remove_file 'app/views/layouts/foundation.html.erb'
|
290
283
|
|
291
284
|
inside 'app/assets/javascripts' do
|
@@ -297,10 +290,10 @@ module MakeItSo
|
|
297
290
|
end
|
298
291
|
|
299
292
|
protected
|
300
|
-
PACKAGE_PATH = 'package.json'
|
301
|
-
WEBCONFIG_PATH = 'webpack.config.js'
|
302
293
|
|
303
|
-
|
294
|
+
PACKAGE_PATH = "package.json"
|
295
|
+
WEBCONFIG_PATH = "webpack.config.js"
|
296
|
+
|
304
297
|
def parsed_package_json
|
305
298
|
@package_json ||= parse_json_file(package_json_file)
|
306
299
|
end
|
data/lib/make_it_so/version.rb
CHANGED
data/make_it_so.gemspec
CHANGED
@@ -23,9 +23,7 @@ Gem::Specification.new do |spec|
|
|
23
23
|
spec.add_dependency "activerecord", "~> 5.2"
|
24
24
|
spec.add_dependency "json"
|
25
25
|
|
26
|
-
spec.add_development_dependency "bundler", "~>
|
27
|
-
spec.add_development_dependency "appraisal"
|
28
|
-
spec.add_development_dependency "rake", "~> 12.0"
|
26
|
+
spec.add_development_dependency "bundler", "~> 2.0.2"
|
29
27
|
spec.add_development_dependency "rspec"
|
30
28
|
spec.add_development_dependency "capybara"
|
31
29
|
end
|
@@ -1,10 +1,9 @@
|
|
1
1
|
{
|
2
2
|
"devDependencies": {
|
3
3
|
"babel-jest": "~23.4.0",
|
4
|
-
"enzyme": "~3.
|
5
|
-
"enzyme-adapter-react-
|
4
|
+
"enzyme": "~3.10.0",
|
5
|
+
"enzyme-adapter-react-16": "~1.14.0",
|
6
6
|
"fetch-mock": "~5.13.1",
|
7
|
-
"jest": "~23.4.1"
|
8
|
-
"react-addons-test-utils": "~15.6.2"
|
7
|
+
"jest": "~23.4.1"
|
9
8
|
}
|
10
9
|
}
|
@@ -1,11 +1,11 @@
|
|
1
1
|
{
|
2
2
|
"devDependencies": {
|
3
|
-
"
|
4
|
-
"enzyme": "
|
3
|
+
"enzyme": "~3.10.0",
|
4
|
+
"enzyme-adapter-react-16": "^1.14.0",
|
5
5
|
"fetch-mock": "5",
|
6
6
|
"fetch-ponyfill": "^6.0.2",
|
7
7
|
"jasmine-core": "~2.4.1",
|
8
|
-
"jasmine-enzyme": "~
|
8
|
+
"jasmine-enzyme": "~7.0.0",
|
9
9
|
"karma": "~0.13.22",
|
10
10
|
"karma-coverage": "0.5.5",
|
11
11
|
"karma-jasmine": "~0.3.8",
|
@@ -13,8 +13,6 @@
|
|
13
13
|
"karma-sourcemap-loader": "0.3.7",
|
14
14
|
"karma-spec-reporter": "0.0.26",
|
15
15
|
"karma-webpack": "2.0.1",
|
16
|
-
"phantomjs-prebuilt": "~2.1.14"
|
17
|
-
"react-addons-test-utils": "~15.6.2"
|
16
|
+
"phantomjs-prebuilt": "~2.1.14"
|
18
17
|
}
|
19
18
|
}
|
20
|
-
|
@@ -1,12 +1,20 @@
|
|
1
1
|
{
|
2
2
|
"dependencies": {
|
3
|
-
"babel-preset-react": "~6.24.1",
|
4
3
|
"prop-types": "~15.6.0",
|
5
|
-
"react": "~
|
6
|
-
"react-dom": "~
|
4
|
+
"react": "~16.8.0",
|
5
|
+
"react-dom": "~16.8.0",
|
6
|
+
"react-router-dom": "5.0.0",
|
7
7
|
"redbox-react": "1.6.0"
|
8
8
|
},
|
9
9
|
"devDependencies": {
|
10
|
+
"@babel/core": "^7.5.5",
|
11
|
+
"@babel/plugin-proposal-class-properties": "^7.0.0",
|
12
|
+
"@babel/plugin-proposal-object-rest-spread": "^7.0.0",
|
13
|
+
"@babel/plugin-syntax-dynamic-import": "^7.0.0",
|
14
|
+
"@babel/plugin-transform-runtime": "^7.5.5",
|
15
|
+
"@babel/preset-env": "^7.5.5",
|
16
|
+
"@babel/preset-react": "^7.0.0",
|
17
|
+
"babel-loader": "^8.0.6",
|
10
18
|
"webpack-cli": "^2.0.10",
|
11
19
|
"webpack-dev-server": "^2.11.1"
|
12
20
|
}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
|
-
feature 'user generates rails app' do
|
3
|
+
feature 'user generates rails app with default settings' do
|
4
4
|
def app_name
|
5
5
|
'dummy_rails'
|
6
6
|
end
|
@@ -9,7 +9,9 @@ feature 'user generates rails app' do
|
|
9
9
|
join_paths(tmp_path, app_name)
|
10
10
|
end
|
11
11
|
|
12
|
-
let(:css_manifest_path) {
|
12
|
+
let(:css_manifest_path) {
|
13
|
+
join_paths(app_path, 'app/assets/stylesheets/application.css')
|
14
|
+
}
|
13
15
|
|
14
16
|
let(:gemfile_path) { join_paths(app_path, 'Gemfile')}
|
15
17
|
let(:package_json_path) { join_paths(app_path, 'package.json')}
|
@@ -84,7 +86,7 @@ feature 'user generates rails app' do
|
|
84
86
|
expect(File.read(gemfile_path)).to include('capybara')
|
85
87
|
end
|
86
88
|
|
87
|
-
it 'includes
|
89
|
+
it 'includes launchy as a Gemfile dependency' do
|
88
90
|
expect(File.read(gemfile_path)).to include('launchy')
|
89
91
|
end
|
90
92
|
|
@@ -188,8 +190,13 @@ feature 'user generates rails app' do
|
|
188
190
|
expect(File.read(css_manifest_path)).to include('foundation_and_overrides')
|
189
191
|
end
|
190
192
|
|
191
|
-
it '
|
192
|
-
|
193
|
+
it 'does not include foundation.html.erb' do
|
194
|
+
foundation_html = File.join(app_path, 'app/views/layouts/foundation.html.erb')
|
195
|
+
expect(FileTest.exists?(foundation_html)).to eq(false)
|
196
|
+
end
|
197
|
+
|
198
|
+
it 'does not include modernizr in the layout' do
|
199
|
+
expect(read_file('app/views/layouts/application.html.erb')).to_not include('modernizr')
|
193
200
|
end
|
194
201
|
end
|
195
202
|
|
@@ -200,7 +207,9 @@ feature 'user generates rails app' do
|
|
200
207
|
|
201
208
|
it 'includes react in package.json' do
|
202
209
|
in_package_json?(File.join(app_path, 'package.json')) do |json|
|
203
|
-
|
210
|
+
react = json["dependencies"]["react"]
|
211
|
+
expect(major_version(react)).to be 16
|
212
|
+
expect(minor_version(react)).to be 8
|
204
213
|
end
|
205
214
|
end
|
206
215
|
|
@@ -212,152 +221,166 @@ feature 'user generates rails app' do
|
|
212
221
|
|
213
222
|
it 'includes react-dom in package.json' do
|
214
223
|
in_package_json?(File.join(app_path, 'package.json')) do |json|
|
215
|
-
|
224
|
+
react_dom = json["dependencies"]["react-dom"]
|
225
|
+
expect(major_version(react_dom)).to be 16
|
226
|
+
expect(minor_version(react_dom)).to be 8
|
227
|
+
end
|
228
|
+
end
|
229
|
+
|
230
|
+
it 'includes react-router-dom in package.json' do
|
231
|
+
in_package_json?(File.join(app_path, 'package.json')) do |json|
|
232
|
+
expect(json["dependencies"]["react-router-dom"]).to_not be_nil
|
216
233
|
end
|
217
234
|
end
|
218
235
|
end
|
219
236
|
|
220
|
-
context '
|
221
|
-
it '
|
222
|
-
|
223
|
-
expect(FileTest.exists?(karma_config)).to eq(true)
|
237
|
+
context 'dotenv' do
|
238
|
+
it 'adds dotenv-rails to Gemfile' do
|
239
|
+
expect(File.read(gemfile_path)).to match(/gem(.*)dotenv-rails/)
|
224
240
|
end
|
225
241
|
|
226
|
-
it '
|
227
|
-
|
228
|
-
expect(FileTest.exists?(test_helper)).to eq(true)
|
242
|
+
it 'adds .env to gitignore' do
|
243
|
+
expect(read_file('.gitignore')).to include(".env\n")
|
229
244
|
end
|
230
245
|
|
231
|
-
it '
|
232
|
-
|
233
|
-
expect(json["devDependencies"]["karma"]).to_not be_nil
|
234
|
-
end
|
246
|
+
it 'creates a .env file' do
|
247
|
+
expect(FileTest.exists?(File.join(app_path, '.env'))).to eq(true)
|
235
248
|
end
|
236
249
|
|
237
|
-
it '
|
250
|
+
it 'creates a .env.example file' do
|
251
|
+
expect(FileTest.exists?(File.join(app_path, '.env.example'))).to eq(true)
|
252
|
+
end
|
253
|
+
end
|
254
|
+
|
255
|
+
context 'babel' do
|
256
|
+
it 'includes necessary babel packages in package.json as dev dependencies' do
|
238
257
|
in_package_json?(File.join(app_path, 'package.json')) do |json|
|
239
|
-
expect(json["devDependencies"]["
|
258
|
+
expect(json["devDependencies"]["@babel/core"]).to_not be_nil
|
259
|
+
expect(json["devDependencies"]["@babel/preset-env"]).to_not be_nil
|
260
|
+
expect(json["devDependencies"]["@babel/preset-react"]).to_not be_nil
|
261
|
+
expect(json["devDependencies"]["babel-loader"]).to_not be_nil
|
240
262
|
end
|
241
263
|
end
|
242
264
|
|
243
|
-
it '
|
265
|
+
it 'sets necessary presets in .babelrc' do
|
266
|
+
babelrc = read_file('.babelrc')
|
267
|
+
expect(babelrc).to include("@babel/env")
|
268
|
+
expect(babelrc).to include("@babel/react")
|
269
|
+
end
|
270
|
+
end
|
271
|
+
|
272
|
+
context 'enzyme' do
|
273
|
+
it 'includes enzyme in package.json' do
|
244
274
|
in_package_json?(File.join(app_path, 'package.json')) do |json|
|
245
|
-
|
275
|
+
enzyme = json["devDependencies"]["enzyme"]
|
276
|
+
expect(major_version(enzyme)).to be 3
|
277
|
+
expect(minor_version(enzyme)).to be 10
|
246
278
|
end
|
247
279
|
end
|
248
280
|
|
249
|
-
it 'includes
|
281
|
+
it 'includes enzyme-adapter-react-16 in package.json' do
|
250
282
|
in_package_json?(File.join(app_path, 'package.json')) do |json|
|
251
|
-
|
283
|
+
adapter = json["devDependencies"]["enzyme-adapter-react-16"]
|
284
|
+
expect(major_version(adapter)).to be 1
|
285
|
+
expect(minor_version(adapter)).to be 14
|
252
286
|
end
|
253
|
-
|
254
287
|
end
|
255
288
|
|
256
|
-
it 'adds
|
257
|
-
|
289
|
+
it 'adds a spec/javascript/support/enzyme.js file' do
|
290
|
+
support_file = File.join(app_path, 'spec/javascript/support/enzyme.js')
|
291
|
+
expect(FileTest.exists?(support_file)).to eq(true)
|
258
292
|
end
|
259
293
|
|
294
|
+
it 'adds spec/javascript/support/enzyme.js to setup' do
|
295
|
+
in_package_json?(package_json_path) do |json|
|
296
|
+
expect(json["jest"]).to_not be_nil
|
297
|
+
expect(json["jest"]["setupFiles"]).to include('./spec/javascript/support/enzyme.js')
|
298
|
+
end
|
299
|
+
end
|
260
300
|
end
|
261
301
|
|
262
|
-
context '
|
263
|
-
it '
|
264
|
-
|
302
|
+
context 'jest' do
|
303
|
+
it 'includes fetch-mock' do
|
304
|
+
in_package_json?(File.join(app_path, 'package.json')) do |json|
|
305
|
+
expect(json["devDependencies"]["fetch-mock"]).to_not be_nil
|
306
|
+
end
|
265
307
|
end
|
266
308
|
|
267
|
-
|
268
|
-
|
309
|
+
scenario 'adds jest as a dependency' do
|
310
|
+
in_package_json?(package_json_path) do |json|
|
311
|
+
expect(json["devDependencies"]["jest"]).to_not be_nil
|
312
|
+
end
|
269
313
|
end
|
270
314
|
|
271
|
-
|
272
|
-
|
315
|
+
scenario 'adds enzyme as a dependency' do
|
316
|
+
in_package_json?(package_json_path) do |json|
|
317
|
+
expect(json["devDependencies"]["enzyme"]).to_not be_nil
|
318
|
+
end
|
273
319
|
end
|
274
320
|
|
275
|
-
|
276
|
-
|
321
|
+
scenario 'adds fetch-mock as a dependency' do
|
322
|
+
in_package_json?(package_json_path) do |json|
|
323
|
+
expect(json["devDependencies"]["fetch-mock"]).to_not be_nil
|
324
|
+
end
|
277
325
|
end
|
278
|
-
end
|
279
|
-
end
|
280
326
|
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
def app_path
|
287
|
-
join_paths(tmp_path, app_name)
|
288
|
-
end
|
289
|
-
|
290
|
-
before(:all) do
|
291
|
-
make_it_so!("rails #{app_name} --jest")
|
292
|
-
end
|
293
|
-
|
294
|
-
let(:package_json_path) { File.join(app_path, 'package.json') }
|
295
|
-
|
296
|
-
|
297
|
-
scenario 'adds jest as a dependency' do
|
298
|
-
in_package_json?(package_json_path) do |json|
|
299
|
-
expect(json["devDependencies"]["jest"]).to_not be_nil
|
327
|
+
scenario 'adds jest as the test script in package.json' do
|
328
|
+
in_package_json?(package_json_path) do |json|
|
329
|
+
expect(json["scripts"]["test"]).to include("jest")
|
330
|
+
end
|
300
331
|
end
|
301
|
-
end
|
302
332
|
|
303
|
-
|
304
|
-
|
305
|
-
|
333
|
+
scenario 'adds spec/javascripts to roots' do
|
334
|
+
in_package_json?(package_json_path) do |json|
|
335
|
+
expect(json["jest"]).to_not be_nil
|
336
|
+
expect(json["jest"]["roots"]).to include("spec/javascript")
|
337
|
+
end
|
306
338
|
end
|
307
|
-
end
|
308
339
|
|
309
|
-
|
310
|
-
|
311
|
-
|
340
|
+
scenario 'adds node_modules to modules directory' do
|
341
|
+
in_package_json?(package_json_path) do |json|
|
342
|
+
expect(json["jest"]).to_not be_nil
|
343
|
+
expect(json["jest"]["moduleDirectories"]).to_not be_nil
|
344
|
+
expect(json["jest"]["moduleDirectories"]).to include("node_modules")
|
345
|
+
end
|
312
346
|
end
|
313
|
-
end
|
314
347
|
|
315
|
-
|
316
|
-
|
317
|
-
|
348
|
+
scenario 'adds app/javascript to modules directory' do
|
349
|
+
in_package_json?(package_json_path) do |json|
|
350
|
+
expect(json["jest"]).to_not be_nil
|
351
|
+
expect(json["jest"]["moduleDirectories"]).to_not be_nil
|
352
|
+
expect(json["jest"]["moduleDirectories"]).to include("app/javascript")
|
353
|
+
end
|
318
354
|
end
|
319
|
-
end
|
320
355
|
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
|
356
|
+
scenario 'adds testURL to jest configuration' do
|
357
|
+
in_package_json?(package_json_path) do |json|
|
358
|
+
expect(json["jest"]).to_not be_nil
|
359
|
+
expect(json["jest"]["testURL"]).to_not be_nil
|
360
|
+
expect(json["jest"]["testURL"]).to eq("http://localhost/")
|
361
|
+
end
|
325
362
|
end
|
326
363
|
end
|
327
364
|
|
328
|
-
|
329
|
-
|
330
|
-
|
331
|
-
expect(json["jest"]["moduleDirectories"]).to_not be_nil
|
332
|
-
expect(json["jest"]["moduleDirectories"]).to include("node_modules")
|
333
|
-
end
|
365
|
+
it 'does not create a karma.config' do
|
366
|
+
karma_config = File.join(app_path, 'karma.conf.js')
|
367
|
+
expect(FileTest.exists?(karma_config)).to eq(false)
|
334
368
|
end
|
335
369
|
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
expect(json["jest"]["moduleDirectories"]).to_not be_nil
|
340
|
-
expect(json["jest"]["moduleDirectories"]).to include("app/javascript")
|
341
|
-
end
|
370
|
+
it 'does not create a testHelper.js' do
|
371
|
+
test_helper = File.join(app_path, 'spec/javascript/testHelper.js')
|
372
|
+
expect(FileTest.exists?(test_helper)).to eq(false)
|
342
373
|
end
|
343
374
|
|
344
|
-
|
345
|
-
in_package_json?(
|
346
|
-
expect(json["
|
347
|
-
expect(json["jest"]["testURL"]).to_not be_nil
|
348
|
-
expect(json["jest"]["testURL"]).to eq("http://localhost/")
|
375
|
+
it 'does not include karma in package.json' do
|
376
|
+
in_package_json?(File.join(app_path, 'package.json')) do |json|
|
377
|
+
expect(json["devDependencies"]["karma"]).to be_nil
|
349
378
|
end
|
350
379
|
end
|
351
380
|
|
352
|
-
|
353
|
-
|
354
|
-
|
355
|
-
end
|
356
|
-
|
357
|
-
scenario 'adds spec/javascript/support/enzyme.js to setup' do
|
358
|
-
in_package_json?(package_json_path) do |json|
|
359
|
-
expect(json["jest"]).to_not be_nil
|
360
|
-
expect(json["jest"]["setupFiles"]).to include('./spec/javascript/support/enzyme.js')
|
381
|
+
it 'does not include jasmine in package.json' do
|
382
|
+
in_package_json?(File.join(app_path, 'package.json')) do |json|
|
383
|
+
expect(json["devDependencies"]["jasmine-core"]).to be_nil
|
361
384
|
end
|
362
385
|
end
|
363
386
|
end
|
@@ -0,0 +1,58 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
feature "user generates rails app with karma/jasmine" do
|
4
|
+
def app_name
|
5
|
+
'dummy_rails'
|
6
|
+
end
|
7
|
+
|
8
|
+
def app_path
|
9
|
+
join_paths(tmp_path, app_name)
|
10
|
+
end
|
11
|
+
|
12
|
+
before(:all) do
|
13
|
+
make_it_so!("rails #{app_name} --js-test-lib karma")
|
14
|
+
end
|
15
|
+
|
16
|
+
let(:package_json_path) { File.join(app_path, 'package.json') }
|
17
|
+
|
18
|
+
it 'creates a karma.config' do
|
19
|
+
karma_config = File.join(app_path, 'karma.conf.js')
|
20
|
+
expect(FileTest.exists?(karma_config)).to eq(true)
|
21
|
+
end
|
22
|
+
|
23
|
+
it 'creates a testHelper.js' do
|
24
|
+
test_helper = File.join(app_path, 'spec/javascript/testHelper.js')
|
25
|
+
expect(FileTest.exists?(test_helper)).to eq(true)
|
26
|
+
end
|
27
|
+
|
28
|
+
it 'includes karma in package.json' do
|
29
|
+
in_package_json?(File.join(app_path, 'package.json')) do |json|
|
30
|
+
expect(json["devDependencies"]["karma"]).to_not be_nil
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
it 'includes jasmine in package.json' do
|
35
|
+
in_package_json?(File.join(app_path, 'package.json')) do |json|
|
36
|
+
expect(json["devDependencies"]["jasmine-core"]).to_not be_nil
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
it 'adds coverage/* to gitignore' do
|
41
|
+
expect(read_file('.gitignore')).to include("coverage/*\n")
|
42
|
+
end
|
43
|
+
|
44
|
+
it 'configures enzyme with adapter in testHelper' do
|
45
|
+
testHelper = read_file('spec/javascript/testHelper.js')
|
46
|
+
expect(testHelper).to include("Enzyme.configure({ adapter: new EnzymeAdapter() })")
|
47
|
+
end
|
48
|
+
|
49
|
+
it 'karma.conf.js uses @babel/polyfill' do
|
50
|
+
expect(read_file('karma.conf.js')).to include("node_modules/@babel/polyfill/dist/polyfill.js")
|
51
|
+
end
|
52
|
+
|
53
|
+
it 'does not add jest as the test script in package.json' do
|
54
|
+
in_package_json?(package_json_path) do |json|
|
55
|
+
expect(json["scripts"]["test"]).to_not include("jest")
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
feature "user generates rails app without js test framework" do
|
4
|
+
def app_name
|
5
|
+
'dummy_rails'
|
6
|
+
end
|
7
|
+
|
8
|
+
def app_path
|
9
|
+
join_paths(tmp_path, app_name)
|
10
|
+
end
|
11
|
+
|
12
|
+
before(:all) do
|
13
|
+
make_it_so!("rails #{app_name} --js-test-lib false")
|
14
|
+
end
|
15
|
+
|
16
|
+
let(:package_json_path) { File.join(app_path, 'package.json') }
|
17
|
+
|
18
|
+
it 'does not create a karma.config' do
|
19
|
+
karma_config = File.join(app_path, 'karma.conf.js')
|
20
|
+
expect(FileTest.exists?(karma_config)).to eq(false)
|
21
|
+
end
|
22
|
+
|
23
|
+
it 'does not create a testHelper.js' do
|
24
|
+
test_helper = File.join(app_path, 'spec/javascript/testHelper.js')
|
25
|
+
expect(FileTest.exists?(test_helper)).to eq(false)
|
26
|
+
end
|
27
|
+
|
28
|
+
it 'does not create an enzyme config file' do
|
29
|
+
test_helper = File.join(app_path, 'spec/javascript/support/enzyme.js')
|
30
|
+
expect(FileTest.exists?(test_helper)).to eq(false)
|
31
|
+
end
|
32
|
+
|
33
|
+
it 'does not include karma or jest in package.json' do
|
34
|
+
in_package_json?(File.join(app_path, 'package.json')) do |json|
|
35
|
+
expect(json["devDependencies"]["karma"]).to be_nil
|
36
|
+
expect(json["devDependencies"]["jest"]).to be_nil
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
it 'does not include jasmine in package.json' do
|
41
|
+
in_package_json?(File.join(app_path, 'package.json')) do |json|
|
42
|
+
expect(json["devDependencies"]["jasmine-core"]).to be_nil
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
it 'does not add a test script in package.json' do
|
47
|
+
in_package_json?(package_json_path) do |json|
|
48
|
+
expect(json["scripts"]["test"]).to be_nil
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
@@ -50,6 +50,29 @@ module MakeItSoSpecHelpers
|
|
50
50
|
json = JSON.parse(contents)
|
51
51
|
yield(json)
|
52
52
|
end
|
53
|
+
|
54
|
+
def read_file(file_path)
|
55
|
+
File.read(File.join(app_path, file_path))
|
56
|
+
end
|
57
|
+
|
58
|
+
def major_version(version_string)
|
59
|
+
version_array(version_string)[0]
|
60
|
+
end
|
61
|
+
|
62
|
+
def minor_version(version_string)
|
63
|
+
version_array(version_string)[1]
|
64
|
+
end
|
65
|
+
|
66
|
+
def patch_version(version_string)
|
67
|
+
version_array(version_string)[2]
|
68
|
+
end
|
69
|
+
|
70
|
+
def version_array(version_string)
|
71
|
+
version_string.delete!("^")
|
72
|
+
version_string.delete!("~")
|
73
|
+
version_array = version_string.split(".")
|
74
|
+
version_array.map{ |string| string.to_i }
|
75
|
+
end
|
53
76
|
end
|
54
77
|
|
55
78
|
RSpec.configure do |config|
|
@@ -0,0 +1,33 @@
|
|
1
|
+
{
|
2
|
+
"presets": [
|
3
|
+
[
|
4
|
+
"@babel/env",
|
5
|
+
{
|
6
|
+
"modules": false,
|
7
|
+
"targets": {
|
8
|
+
"browsers": "> 1%"
|
9
|
+
},
|
10
|
+
"forceAllTransforms": true
|
11
|
+
}
|
12
|
+
],
|
13
|
+
"@babel/react"
|
14
|
+
],
|
15
|
+
"plugins": [
|
16
|
+
"@babel/syntax-dynamic-import",
|
17
|
+
"@babel/proposal-object-rest-spread",
|
18
|
+
[
|
19
|
+
"@babel/proposal-class-properties",
|
20
|
+
{
|
21
|
+
"spec": true
|
22
|
+
}
|
23
|
+
]
|
24
|
+
],
|
25
|
+
"env": {
|
26
|
+
"test": {
|
27
|
+
"presets": [
|
28
|
+
"@babel/env",
|
29
|
+
"@babel/react"
|
30
|
+
]
|
31
|
+
}
|
32
|
+
}
|
33
|
+
}
|
@@ -4,20 +4,13 @@
|
|
4
4
|
<title><%= camelized %></title>
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
6
6
|
<%%= stylesheet_link_tag 'application', media: 'all' %>
|
7
|
-
<% if options.foundation? %>
|
8
|
-
<%%= javascript_include_tag "vendor/modernizr" %>
|
9
|
-
<% end %>
|
10
7
|
<%%= csrf_meta_tags %>
|
11
8
|
</head>
|
12
9
|
<body>
|
13
10
|
<%- if options.devise? -%>
|
14
11
|
<% if options.foundation? %>
|
15
12
|
<nav class="top-bar">
|
16
|
-
<
|
17
|
-
<li class="name">
|
18
|
-
<h1><a href="/"><%= camelized %></a></h1>
|
19
|
-
</li>
|
20
|
-
</ul>
|
13
|
+
<h1><a href="/"><%= camelized %></a></h1>
|
21
14
|
|
22
15
|
<section class="top-bar-section">
|
23
16
|
<ul class="right">
|
@@ -12,7 +12,7 @@ module.exports = function(config) {
|
|
12
12
|
// files that Karma will server to the browser
|
13
13
|
files: [
|
14
14
|
// use Babel polyfill to emulate a full ES6 environment in PhantomJS
|
15
|
-
'node_modules/
|
15
|
+
'node_modules/@babel/polyfill/dist/polyfill.js',
|
16
16
|
// entry file for Webpack
|
17
17
|
'spec/javascript/testHelper.js'
|
18
18
|
],
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: make_it_so
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dan Pickett
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-09-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -72,42 +72,14 @@ dependencies:
|
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version:
|
75
|
+
version: 2.0.2
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version:
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: appraisal
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - ">="
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '0'
|
90
|
-
type: :development
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - ">="
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '0'
|
97
|
-
- !ruby/object:Gem::Dependency
|
98
|
-
name: rake
|
99
|
-
requirement: !ruby/object:Gem::Requirement
|
100
|
-
requirements:
|
101
|
-
- - "~>"
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '12.0'
|
104
|
-
type: :development
|
105
|
-
prerelease: false
|
106
|
-
version_requirements: !ruby/object:Gem::Requirement
|
107
|
-
requirements:
|
108
|
-
- - "~>"
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version: '12.0'
|
82
|
+
version: 2.0.2
|
111
83
|
- !ruby/object:Gem::Dependency
|
112
84
|
name: rspec
|
113
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -146,18 +118,11 @@ extra_rdoc_files: []
|
|
146
118
|
files:
|
147
119
|
- ".gitignore"
|
148
120
|
- ".rspec"
|
149
|
-
- Appraisals
|
150
121
|
- Gemfile
|
151
122
|
- LICENSE.txt
|
152
123
|
- README.md
|
153
124
|
- Rakefile
|
154
125
|
- bin/make_it_so
|
155
|
-
- gemfiles/rails_4_0.gemfile
|
156
|
-
- gemfiles/rails_4_0.gemfile.lock
|
157
|
-
- gemfiles/rails_4_1.gemfile
|
158
|
-
- gemfiles/rails_4_1.gemfile.lock
|
159
|
-
- gemfiles/rails_4_2.gemfile
|
160
|
-
- gemfiles/rails_4_2.gemfile.lock
|
161
126
|
- lib/generators/gosu_app_generator.rb
|
162
127
|
- lib/generators/rails_app_generator.rb
|
163
128
|
- lib/generators/sinatra_app_generator.rb
|
@@ -169,11 +134,13 @@ files:
|
|
169
134
|
- make_it_so.gemspec
|
170
135
|
- snippets/rails/application_generator.rb
|
171
136
|
- snippets/rails/js_jest_testing_deps.json
|
172
|
-
- snippets/rails/
|
137
|
+
- snippets/rails/js_karma_jasmine_testing_deps.json
|
173
138
|
- snippets/rails/react_dependencies.json
|
174
139
|
- snippets/rails/user_factory.rb
|
140
|
+
- spec/features/rails/user_generates_rails_spec.rb
|
141
|
+
- spec/features/rails/user_generates_rails_with_karma_spec.rb
|
142
|
+
- spec/features/rails/user_generates_rails_without_js_test_lib_spec.rb
|
175
143
|
- spec/features/user_generates_gosu_spec.rb
|
176
|
-
- spec/features/user_generates_rails_spec.rb
|
177
144
|
- spec/features/user_generates_sinatra_spec.rb
|
178
145
|
- spec/spec_helper.rb
|
179
146
|
- spec/support/make_it_so_spec_helpers.rb
|
@@ -185,6 +152,7 @@ files:
|
|
185
152
|
- templates/gosu/lib/bounding_box.rb
|
186
153
|
- templates/gosu/lib/keys.rb
|
187
154
|
- templates/gosu/spec/spec_helper.rb
|
155
|
+
- templates/rails/.babelrc
|
188
156
|
- templates/rails/.env
|
189
157
|
- templates/rails/.env.example
|
190
158
|
- templates/rails/.gitkeep
|
@@ -236,14 +204,15 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
236
204
|
- !ruby/object:Gem::Version
|
237
205
|
version: '0'
|
238
206
|
requirements: []
|
239
|
-
|
240
|
-
rubygems_version: 2.6.13
|
207
|
+
rubygems_version: 3.0.6
|
241
208
|
signing_key:
|
242
209
|
specification_version: 4
|
243
210
|
summary: An application generator for all things ruby
|
244
211
|
test_files:
|
212
|
+
- spec/features/rails/user_generates_rails_spec.rb
|
213
|
+
- spec/features/rails/user_generates_rails_with_karma_spec.rb
|
214
|
+
- spec/features/rails/user_generates_rails_without_js_test_lib_spec.rb
|
245
215
|
- spec/features/user_generates_gosu_spec.rb
|
246
|
-
- spec/features/user_generates_rails_spec.rb
|
247
216
|
- spec/features/user_generates_sinatra_spec.rb
|
248
217
|
- spec/spec_helper.rb
|
249
218
|
- spec/support/make_it_so_spec_helpers.rb
|
data/Appraisals
DELETED
data/gemfiles/rails_4_0.gemfile
DELETED
@@ -1,88 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: ../
|
3
|
-
specs:
|
4
|
-
make_it_so (0.0.2)
|
5
|
-
railties
|
6
|
-
thor
|
7
|
-
|
8
|
-
GEM
|
9
|
-
remote: https://rubygems.org/
|
10
|
-
specs:
|
11
|
-
actionpack (4.0.12)
|
12
|
-
activesupport (= 4.0.12)
|
13
|
-
builder (~> 3.1.0)
|
14
|
-
erubis (~> 2.7.0)
|
15
|
-
rack (~> 1.5.2)
|
16
|
-
rack-test (~> 0.6.2)
|
17
|
-
activesupport (4.0.12)
|
18
|
-
i18n (~> 0.6, >= 0.6.9)
|
19
|
-
minitest (~> 4.2)
|
20
|
-
multi_json (~> 1.3)
|
21
|
-
thread_safe (~> 0.1)
|
22
|
-
tzinfo (~> 0.3.37)
|
23
|
-
appraisal (1.0.2)
|
24
|
-
bundler
|
25
|
-
rake
|
26
|
-
thor (>= 0.14.0)
|
27
|
-
builder (3.1.4)
|
28
|
-
capybara (2.4.4)
|
29
|
-
mime-types (>= 1.16)
|
30
|
-
nokogiri (>= 1.3.3)
|
31
|
-
rack (>= 1.0.0)
|
32
|
-
rack-test (>= 0.5.4)
|
33
|
-
xpath (~> 2.0)
|
34
|
-
coderay (1.1.0)
|
35
|
-
diff-lcs (1.2.5)
|
36
|
-
erubis (2.7.0)
|
37
|
-
i18n (0.7.0)
|
38
|
-
method_source (0.8.2)
|
39
|
-
mime-types (2.4.3)
|
40
|
-
mini_portile (0.6.1)
|
41
|
-
minitest (4.7.5)
|
42
|
-
multi_json (1.10.1)
|
43
|
-
nokogiri (1.6.5)
|
44
|
-
mini_portile (~> 0.6.0)
|
45
|
-
pry (0.10.1)
|
46
|
-
coderay (~> 1.1.0)
|
47
|
-
method_source (~> 0.8.1)
|
48
|
-
slop (~> 3.4)
|
49
|
-
rack (1.5.2)
|
50
|
-
rack-test (0.6.2)
|
51
|
-
rack (>= 1.0)
|
52
|
-
railties (4.0.12)
|
53
|
-
actionpack (= 4.0.12)
|
54
|
-
activesupport (= 4.0.12)
|
55
|
-
rake (>= 0.8.7)
|
56
|
-
thor (>= 0.18.1, < 2.0)
|
57
|
-
rake (10.4.2)
|
58
|
-
rspec (3.1.0)
|
59
|
-
rspec-core (~> 3.1.0)
|
60
|
-
rspec-expectations (~> 3.1.0)
|
61
|
-
rspec-mocks (~> 3.1.0)
|
62
|
-
rspec-core (3.1.7)
|
63
|
-
rspec-support (~> 3.1.0)
|
64
|
-
rspec-expectations (3.1.2)
|
65
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
66
|
-
rspec-support (~> 3.1.0)
|
67
|
-
rspec-mocks (3.1.3)
|
68
|
-
rspec-support (~> 3.1.0)
|
69
|
-
rspec-support (3.1.2)
|
70
|
-
slop (3.6.0)
|
71
|
-
thor (0.19.1)
|
72
|
-
thread_safe (0.3.4)
|
73
|
-
tzinfo (0.3.42)
|
74
|
-
xpath (2.0.0)
|
75
|
-
nokogiri (~> 1.3)
|
76
|
-
|
77
|
-
PLATFORMS
|
78
|
-
ruby
|
79
|
-
|
80
|
-
DEPENDENCIES
|
81
|
-
appraisal
|
82
|
-
bundler (~> 1.7)
|
83
|
-
capybara
|
84
|
-
make_it_so!
|
85
|
-
pry
|
86
|
-
railties (~> 4.0.12)
|
87
|
-
rake (~> 10.0)
|
88
|
-
rspec
|
data/gemfiles/rails_4_1.gemfile
DELETED
@@ -1,92 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: ../
|
3
|
-
specs:
|
4
|
-
make_it_so (0.0.2)
|
5
|
-
railties
|
6
|
-
thor
|
7
|
-
|
8
|
-
GEM
|
9
|
-
remote: https://rubygems.org/
|
10
|
-
specs:
|
11
|
-
actionpack (4.1.8)
|
12
|
-
actionview (= 4.1.8)
|
13
|
-
activesupport (= 4.1.8)
|
14
|
-
rack (~> 1.5.2)
|
15
|
-
rack-test (~> 0.6.2)
|
16
|
-
actionview (4.1.8)
|
17
|
-
activesupport (= 4.1.8)
|
18
|
-
builder (~> 3.1)
|
19
|
-
erubis (~> 2.7.0)
|
20
|
-
activesupport (4.1.8)
|
21
|
-
i18n (~> 0.6, >= 0.6.9)
|
22
|
-
json (~> 1.7, >= 1.7.7)
|
23
|
-
minitest (~> 5.1)
|
24
|
-
thread_safe (~> 0.1)
|
25
|
-
tzinfo (~> 1.1)
|
26
|
-
appraisal (1.0.2)
|
27
|
-
bundler
|
28
|
-
rake
|
29
|
-
thor (>= 0.14.0)
|
30
|
-
builder (3.2.2)
|
31
|
-
capybara (2.4.4)
|
32
|
-
mime-types (>= 1.16)
|
33
|
-
nokogiri (>= 1.3.3)
|
34
|
-
rack (>= 1.0.0)
|
35
|
-
rack-test (>= 0.5.4)
|
36
|
-
xpath (~> 2.0)
|
37
|
-
coderay (1.1.0)
|
38
|
-
diff-lcs (1.2.5)
|
39
|
-
erubis (2.7.0)
|
40
|
-
i18n (0.7.0)
|
41
|
-
json (1.8.1)
|
42
|
-
method_source (0.8.2)
|
43
|
-
mime-types (2.4.3)
|
44
|
-
mini_portile (0.6.1)
|
45
|
-
minitest (5.5.0)
|
46
|
-
nokogiri (1.6.5)
|
47
|
-
mini_portile (~> 0.6.0)
|
48
|
-
pry (0.10.1)
|
49
|
-
coderay (~> 1.1.0)
|
50
|
-
method_source (~> 0.8.1)
|
51
|
-
slop (~> 3.4)
|
52
|
-
rack (1.5.2)
|
53
|
-
rack-test (0.6.2)
|
54
|
-
rack (>= 1.0)
|
55
|
-
railties (4.1.8)
|
56
|
-
actionpack (= 4.1.8)
|
57
|
-
activesupport (= 4.1.8)
|
58
|
-
rake (>= 0.8.7)
|
59
|
-
thor (>= 0.18.1, < 2.0)
|
60
|
-
rake (10.4.2)
|
61
|
-
rspec (3.1.0)
|
62
|
-
rspec-core (~> 3.1.0)
|
63
|
-
rspec-expectations (~> 3.1.0)
|
64
|
-
rspec-mocks (~> 3.1.0)
|
65
|
-
rspec-core (3.1.7)
|
66
|
-
rspec-support (~> 3.1.0)
|
67
|
-
rspec-expectations (3.1.2)
|
68
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
69
|
-
rspec-support (~> 3.1.0)
|
70
|
-
rspec-mocks (3.1.3)
|
71
|
-
rspec-support (~> 3.1.0)
|
72
|
-
rspec-support (3.1.2)
|
73
|
-
slop (3.6.0)
|
74
|
-
thor (0.19.1)
|
75
|
-
thread_safe (0.3.4)
|
76
|
-
tzinfo (1.2.2)
|
77
|
-
thread_safe (~> 0.1)
|
78
|
-
xpath (2.0.0)
|
79
|
-
nokogiri (~> 1.3)
|
80
|
-
|
81
|
-
PLATFORMS
|
82
|
-
ruby
|
83
|
-
|
84
|
-
DEPENDENCIES
|
85
|
-
appraisal
|
86
|
-
bundler (~> 1.7)
|
87
|
-
capybara
|
88
|
-
make_it_so!
|
89
|
-
pry
|
90
|
-
railties (~> 4.1.8)
|
91
|
-
rake (~> 10.0)
|
92
|
-
rspec
|
data/gemfiles/rails_4_2.gemfile
DELETED
@@ -1,106 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: ../
|
3
|
-
specs:
|
4
|
-
make_it_so (0.0.2)
|
5
|
-
railties
|
6
|
-
thor
|
7
|
-
|
8
|
-
GEM
|
9
|
-
remote: https://rubygems.org/
|
10
|
-
specs:
|
11
|
-
actionpack (4.2.0)
|
12
|
-
actionview (= 4.2.0)
|
13
|
-
activesupport (= 4.2.0)
|
14
|
-
rack (~> 1.6.0)
|
15
|
-
rack-test (~> 0.6.2)
|
16
|
-
rails-dom-testing (~> 1.0, >= 1.0.5)
|
17
|
-
rails-html-sanitizer (~> 1.0, >= 1.0.1)
|
18
|
-
actionview (4.2.0)
|
19
|
-
activesupport (= 4.2.0)
|
20
|
-
builder (~> 3.1)
|
21
|
-
erubis (~> 2.7.0)
|
22
|
-
rails-dom-testing (~> 1.0, >= 1.0.5)
|
23
|
-
rails-html-sanitizer (~> 1.0, >= 1.0.1)
|
24
|
-
activesupport (4.2.0)
|
25
|
-
i18n (~> 0.7)
|
26
|
-
json (~> 1.7, >= 1.7.7)
|
27
|
-
minitest (~> 5.1)
|
28
|
-
thread_safe (~> 0.3, >= 0.3.4)
|
29
|
-
tzinfo (~> 1.1)
|
30
|
-
appraisal (1.0.2)
|
31
|
-
bundler
|
32
|
-
rake
|
33
|
-
thor (>= 0.14.0)
|
34
|
-
builder (3.2.2)
|
35
|
-
capybara (2.4.4)
|
36
|
-
mime-types (>= 1.16)
|
37
|
-
nokogiri (>= 1.3.3)
|
38
|
-
rack (>= 1.0.0)
|
39
|
-
rack-test (>= 0.5.4)
|
40
|
-
xpath (~> 2.0)
|
41
|
-
coderay (1.1.0)
|
42
|
-
diff-lcs (1.2.5)
|
43
|
-
erubis (2.7.0)
|
44
|
-
i18n (0.7.0)
|
45
|
-
json (1.8.1)
|
46
|
-
loofah (2.0.1)
|
47
|
-
nokogiri (>= 1.5.9)
|
48
|
-
method_source (0.8.2)
|
49
|
-
mime-types (2.4.3)
|
50
|
-
mini_portile (0.6.1)
|
51
|
-
minitest (5.5.0)
|
52
|
-
nokogiri (1.6.5)
|
53
|
-
mini_portile (~> 0.6.0)
|
54
|
-
pry (0.10.1)
|
55
|
-
coderay (~> 1.1.0)
|
56
|
-
method_source (~> 0.8.1)
|
57
|
-
slop (~> 3.4)
|
58
|
-
rack (1.6.0)
|
59
|
-
rack-test (0.6.2)
|
60
|
-
rack (>= 1.0)
|
61
|
-
rails-deprecated_sanitizer (1.0.3)
|
62
|
-
activesupport (>= 4.2.0.alpha)
|
63
|
-
rails-dom-testing (1.0.5)
|
64
|
-
activesupport (>= 4.2.0.beta, < 5.0)
|
65
|
-
nokogiri (~> 1.6.0)
|
66
|
-
rails-deprecated_sanitizer (>= 1.0.1)
|
67
|
-
rails-html-sanitizer (1.0.1)
|
68
|
-
loofah (~> 2.0)
|
69
|
-
railties (4.2.0)
|
70
|
-
actionpack (= 4.2.0)
|
71
|
-
activesupport (= 4.2.0)
|
72
|
-
rake (>= 0.8.7)
|
73
|
-
thor (>= 0.18.1, < 2.0)
|
74
|
-
rake (10.4.2)
|
75
|
-
rspec (3.1.0)
|
76
|
-
rspec-core (~> 3.1.0)
|
77
|
-
rspec-expectations (~> 3.1.0)
|
78
|
-
rspec-mocks (~> 3.1.0)
|
79
|
-
rspec-core (3.1.7)
|
80
|
-
rspec-support (~> 3.1.0)
|
81
|
-
rspec-expectations (3.1.2)
|
82
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
83
|
-
rspec-support (~> 3.1.0)
|
84
|
-
rspec-mocks (3.1.3)
|
85
|
-
rspec-support (~> 3.1.0)
|
86
|
-
rspec-support (3.1.2)
|
87
|
-
slop (3.6.0)
|
88
|
-
thor (0.19.1)
|
89
|
-
thread_safe (0.3.4)
|
90
|
-
tzinfo (1.2.2)
|
91
|
-
thread_safe (~> 0.1)
|
92
|
-
xpath (2.0.0)
|
93
|
-
nokogiri (~> 1.3)
|
94
|
-
|
95
|
-
PLATFORMS
|
96
|
-
ruby
|
97
|
-
|
98
|
-
DEPENDENCIES
|
99
|
-
appraisal
|
100
|
-
bundler (~> 1.7)
|
101
|
-
capybara
|
102
|
-
make_it_so!
|
103
|
-
pry
|
104
|
-
railties (~> 4.2.0)
|
105
|
-
rake (~> 10.0)
|
106
|
-
rspec
|