make_it_so 0.4.5 → 0.5.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 +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
|