blacklight_advanced_search 6.0.2 → 6.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (61) hide show
  1. checksums.yaml +4 -4
  2. data/.rspec +2 -0
  3. data/.rubocop.yml +15 -0
  4. data/.rubocop_todo.yml +351 -0
  5. data/.solr_wrapper.yml +5 -0
  6. data/.travis.yml +4 -7
  7. data/Gemfile +18 -11
  8. data/Rakefile +24 -34
  9. data/VERSION +1 -1
  10. data/app/controllers/advanced_controller.rb +5 -7
  11. data/app/controllers/blacklight_advanced_search/advanced_controller.rb +5 -8
  12. data/app/helpers/advanced_helper.rb +4 -6
  13. data/blacklight_advanced_search.gemspec +11 -8
  14. data/lib/blacklight_advanced_search.rb +29 -34
  15. data/lib/blacklight_advanced_search/advanced_query_parser.rb +12 -13
  16. data/lib/blacklight_advanced_search/advanced_search_builder.rb +28 -32
  17. data/lib/blacklight_advanced_search/catalog_helper_override.rb +11 -34
  18. data/lib/blacklight_advanced_search/controller.rb +1 -1
  19. data/lib/blacklight_advanced_search/filter_parser.rb +7 -9
  20. data/lib/blacklight_advanced_search/parsing_nesting_parser.rb +5 -8
  21. data/lib/blacklight_advanced_search/redirect_legacy_params_filter.rb +23 -25
  22. data/lib/blacklight_advanced_search/render_constraints_override.rb +46 -33
  23. data/lib/blacklight_advanced_search/version.rb +0 -1
  24. data/lib/generators/blacklight_advanced_search/assets_generator.rb +4 -8
  25. data/lib/generators/blacklight_advanced_search/blacklight_advanced_search_generator.rb +0 -2
  26. data/lib/generators/blacklight_advanced_search/install_generator.rb +9 -5
  27. data/lib/generators/blacklight_advanced_search/templates/advanced_controller.rb +0 -2
  28. data/lib/parsing_nesting/grammar.rb +22 -25
  29. data/lib/parsing_nesting/tree.rb +156 -168
  30. data/solr/conf/_rest_managed.json +3 -0
  31. data/solr/conf/admin-extra.html +31 -0
  32. data/solr/conf/elevate.xml +36 -0
  33. data/solr/conf/mapping-ISOLatin1Accent.txt +246 -0
  34. data/solr/conf/protwords.txt +21 -0
  35. data/solr/conf/schema.xml +635 -0
  36. data/solr/conf/scripts.conf +24 -0
  37. data/solr/conf/solrconfig.xml +411 -0
  38. data/solr/conf/spellings.txt +2 -0
  39. data/solr/conf/stopwords.txt +58 -0
  40. data/solr/conf/stopwords_en.txt +58 -0
  41. data/solr/conf/synonyms.txt +31 -0
  42. data/solr/conf/xslt/example.xsl +132 -0
  43. data/solr/conf/xslt/example_atom.xsl +67 -0
  44. data/solr/conf/xslt/example_rss.xsl +66 -0
  45. data/solr/conf/xslt/luke.xsl +337 -0
  46. data/solr/sample_solr_documents.yml +2692 -0
  47. data/spec/features/blacklight_advanced_search_form_spec.rb +0 -2
  48. data/spec/helpers/advanced_helper_spec.rb +0 -2
  49. data/spec/integration/blacklight_stub_spec.rb +0 -2
  50. data/spec/lib/advanced_search_builder_spec.rb +7 -14
  51. data/spec/lib/blacklight_advanced_search/render_constraints_override_spec.rb +39 -0
  52. data/spec/lib/deep_merge_spec.rb +109 -34
  53. data/spec/lib/filter_parser_spec.rb +8 -14
  54. data/spec/parsing_nesting/build_tree_spec.rb +73 -81
  55. data/spec/parsing_nesting/consuming_spec.rb +2 -12
  56. data/spec/parsing_nesting/to_solr_spec.rb +93 -130
  57. data/spec/spec_helper.rb +0 -3
  58. data/spec/test_app_templates/app/controllers/catalog_controller.rb +3 -3
  59. data/spec/test_app_templates/lib/generators/test_app_generator.rb +3 -3
  60. metadata +63 -13
  61. data/spec/spec.opts +0 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a35c0640635eb3eb11120e2f48f91e2ce2f837bd
4
- data.tar.gz: e1d9545fabe6ad579a6c066af9e03ea410500fc2
3
+ metadata.gz: 1a0d1a3ae8894d6913705748f4f0c36cd946aed0
4
+ data.tar.gz: 490f7bd162c8016890aafb194d6f2219fd4275ed
5
5
  SHA512:
6
- metadata.gz: 3663a1780f7317d5132f457e49e0171124cee6cc327458d96e6670129a027ff3c2397adcf9aaadfb1c72fffb3358305b611e685c29b69ccd7c2675734d014e3c
7
- data.tar.gz: 3d110353293c52a756c9e6b43731251900e382f03488661accadf6fecbc49b13fbf8f064a5c05bbd7b7dbbd98308008eb5fc8ce4f79dfa6ef1dd455dad729cf4
6
+ metadata.gz: 37e8e598f7d4f513085ba671ceed8f9ad3fe273235fcb05c690dfd9912af8848af63e4a68d5e60ae6d709e9c2156240bca9e1d6d567259d55a8e581ce1c3aa48
7
+ data.tar.gz: 7be40cbe6fcbcf8b5c14220f4f7ddaedc94c519576938c8766862e2c3d6890ea445d9b6a3c5ae5df37823edf84067bd54af7951d22367a1257a4539733e9d646
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --require spec_helper
data/.rubocop.yml ADDED
@@ -0,0 +1,15 @@
1
+ inherit_from: .rubocop_todo.yml
2
+ require: rubocop-rspec
3
+
4
+ AllCops:
5
+ DisplayCopNames: true
6
+ Include:
7
+ - '**/Rakefile'
8
+ Exclude:
9
+ - '.internal_test_app/**/*'
10
+
11
+ Rails:
12
+ Enabled: true
13
+
14
+ Metrics/LineLength:
15
+ Max: 185
data/.rubocop_todo.yml ADDED
@@ -0,0 +1,351 @@
1
+ # This configuration was generated by
2
+ # `rubocop --auto-gen-config`
3
+ # on 2016-08-25 19:29:18 -0700 using RuboCop version 0.42.0.
4
+ # The point is for the user to remove these configuration records
5
+ # one by one as the offenses are removed from the code base.
6
+ # Note that changes in the inspected code, or installation of new
7
+ # versions of RuboCop, may require this file to be generated again.
8
+
9
+ # Manually added to prevent `unrecognized cop` warnings during execution.
10
+ require: rubocop-rspec
11
+
12
+ # Offense count: 2
13
+ Lint/AmbiguousOperator:
14
+ Exclude:
15
+ - 'app/helpers/advanced_helper.rb'
16
+ - 'spec/parsing_nesting/to_solr_spec.rb'
17
+
18
+ # Offense count: 3
19
+ # Configuration parameters: AllowSafeAssignment.
20
+ Lint/AssignmentInCondition:
21
+ Exclude:
22
+ - 'lib/parsing_nesting/tree.rb'
23
+
24
+ # Offense count: 3
25
+ # Cop supports --auto-correct.
26
+ # Configuration parameters: AlignWith, SupportedStyles, AutoCorrect.
27
+ # SupportedStyles: keyword, variable, start_of_line
28
+ Lint/EndAlignment:
29
+ Exclude:
30
+ - 'lib/blacklight_advanced_search/advanced_search_builder.rb'
31
+ - 'lib/blacklight_advanced_search/redirect_legacy_params_filter.rb'
32
+ - 'lib/parsing_nesting/tree.rb'
33
+
34
+ # Offense count: 17
35
+ Lint/ShadowingOuterLocalVariable:
36
+ Exclude:
37
+ - 'spec/parsing_nesting/build_tree_spec.rb'
38
+ - 'spec/parsing_nesting/to_solr_spec.rb'
39
+
40
+ # Offense count: 1
41
+ Lint/UselessAssignment:
42
+ Exclude:
43
+ - 'lib/blacklight_advanced_search/advanced_search_builder.rb'
44
+
45
+ # Offense count: 7
46
+ Metrics/AbcSize:
47
+ Max: 38
48
+
49
+ # Offense count: 3
50
+ Metrics/CyclomaticComplexity:
51
+ Max: 11
52
+
53
+ # Offense count: 14
54
+ # Configuration parameters: CountComments.
55
+ Metrics/MethodLength:
56
+ Max: 22
57
+
58
+ # Offense count: 2
59
+ Metrics/PerceivedComplexity:
60
+ Max: 13
61
+
62
+ # Offense count: 7
63
+ RSpec/DescribeClass:
64
+ Exclude:
65
+ - 'spec/features/blacklight_advanced_search_form_spec.rb'
66
+ - 'spec/integration/blacklight_stub_spec.rb'
67
+ - 'spec/lib/deep_merge_spec.rb'
68
+ - 'spec/lib/filter_parser_spec.rb'
69
+ - 'spec/parsing_nesting/build_tree_spec.rb'
70
+ - 'spec/parsing_nesting/consuming_spec.rb'
71
+ - 'spec/parsing_nesting/to_solr_spec.rb'
72
+
73
+ # Offense count: 21
74
+ # Configuration parameters: Max.
75
+ RSpec/ExampleLength:
76
+ Exclude:
77
+ - 'spec/parsing_nesting/build_tree_spec.rb'
78
+ - 'spec/parsing_nesting/to_solr_spec.rb'
79
+
80
+ # Offense count: 40
81
+ # Configuration parameters: CustomTransform, IgnoredWords.
82
+ RSpec/ExampleWording:
83
+ Exclude:
84
+ - 'spec/features/blacklight_advanced_search_form_spec.rb'
85
+ - 'spec/helpers/advanced_helper_spec.rb'
86
+ - 'spec/integration/blacklight_stub_spec.rb'
87
+ - 'spec/lib/filter_parser_spec.rb'
88
+ - 'spec/parsing_nesting/build_tree_spec.rb'
89
+ - 'spec/parsing_nesting/to_solr_spec.rb'
90
+
91
+ # Offense count: 1
92
+ # Configuration parameters: CustomTransform.
93
+ RSpec/FilePath:
94
+ Exclude:
95
+ - 'spec/lib/advanced_search_builder_spec.rb'
96
+
97
+ # Offense count: 17
98
+ # Configuration parameters: AssignmentOnly.
99
+ RSpec/InstanceVariable:
100
+ Exclude:
101
+ - 'spec/lib/deep_merge_spec.rb'
102
+ - 'spec/parsing_nesting/consuming_spec.rb'
103
+ - 'spec/parsing_nesting/to_solr_spec.rb'
104
+
105
+ # Offense count: 2
106
+ # Configuration parameters: EnforcedStyle, SupportedStyles.
107
+ # SupportedStyles: allow, expect
108
+ RSpec/MessageExpectation:
109
+ Exclude:
110
+ - 'spec/helpers/advanced_helper_spec.rb'
111
+
112
+ # Offense count: 29
113
+ RSpec/MultipleExpectations:
114
+ Max: 6
115
+
116
+ # Offense count: 4
117
+ # Configuration parameters: MaxNesting.
118
+ RSpec/NestedGroups:
119
+ Exclude:
120
+ - 'spec/lib/advanced_search_builder_spec.rb'
121
+
122
+ # Offense count: 5
123
+ # Configuration parameters: IgnoreSymbolicNames.
124
+ RSpec/VerifiedDoubles:
125
+ Exclude:
126
+ - 'spec/helpers/advanced_helper_spec.rb'
127
+ - 'spec/lib/advanced_search_builder_spec.rb'
128
+
129
+ # Offense count: 1
130
+ Rails/OutputSafety:
131
+ Exclude:
132
+ - 'lib/blacklight_advanced_search/render_constraints_override.rb'
133
+
134
+ # Offense count: 1
135
+ Style/AccessorMethodName:
136
+ Exclude:
137
+ - 'app/controllers/blacklight_advanced_search/advanced_controller.rb'
138
+
139
+ # Offense count: 9
140
+ # Cop supports --auto-correct.
141
+ # Configuration parameters: EnforcedHashRocketStyle, EnforcedColonStyle, EnforcedLastArgumentHashStyle, SupportedLastArgumentHashStyles.
142
+ # SupportedLastArgumentHashStyles: always_inspect, always_ignore, ignore_implicit, ignore_explicit
143
+ Style/AlignHash:
144
+ Exclude:
145
+ - 'lib/parsing_nesting/tree.rb'
146
+ - 'spec/lib/deep_merge_spec.rb'
147
+
148
+ # Offense count: 4
149
+ # Cop supports --auto-correct.
150
+ # Configuration parameters: EnforcedStyle, SupportedStyles, IndentationWidth.
151
+ # SupportedStyles: with_first_parameter, with_fixed_indentation
152
+ Style/AlignParameters:
153
+ Exclude:
154
+ - 'lib/blacklight_advanced_search/render_constraints_override.rb'
155
+
156
+ # Offense count: 7
157
+ # Configuration parameters: EnforcedStyle, SupportedStyles.
158
+ # SupportedStyles: nested, compact
159
+ Style/ClassAndModuleChildren:
160
+ Exclude:
161
+ - 'app/controllers/blacklight_advanced_search/advanced_controller.rb'
162
+ - 'lib/blacklight_advanced_search/catalog_helper_override.rb'
163
+ - 'lib/blacklight_advanced_search/controller.rb'
164
+ - 'lib/blacklight_advanced_search/filter_parser.rb'
165
+ - 'lib/blacklight_advanced_search/parsing_nesting_parser.rb'
166
+ - 'lib/blacklight_advanced_search/render_constraints_override.rb'
167
+ - 'lib/parsing_nesting/tree.rb'
168
+
169
+ # Offense count: 1
170
+ Style/ClassVars:
171
+ Exclude:
172
+ - 'lib/blacklight_advanced_search/advanced_search_builder.rb'
173
+
174
+ # Offense count: 25
175
+ Style/Documentation:
176
+ Exclude:
177
+ - 'spec/**/*'
178
+ - 'test/**/*'
179
+ - 'lib/blacklight_advanced_search.rb'
180
+ - 'lib/blacklight_advanced_search/advanced_search_builder.rb'
181
+ - 'lib/blacklight_advanced_search/catalog_helper_override.rb'
182
+ - 'lib/blacklight_advanced_search/filter_parser.rb'
183
+ - 'lib/blacklight_advanced_search/parsing_nesting_parser.rb'
184
+ - 'lib/blacklight_advanced_search/redirect_legacy_params_filter.rb'
185
+ - 'lib/blacklight_advanced_search/version.rb'
186
+ - 'lib/generators/blacklight_advanced_search/assets_generator.rb'
187
+ - 'lib/generators/blacklight_advanced_search/blacklight_advanced_search_generator.rb'
188
+ - 'lib/generators/blacklight_advanced_search/install_generator.rb'
189
+ - 'lib/generators/blacklight_advanced_search/templates/advanced_controller.rb'
190
+ - 'lib/generators/blacklight_advanced_search/templates/saved_searches_controller.rb'
191
+ - 'lib/generators/blacklight_advanced_search/templates/search_history_controller.rb'
192
+ - 'lib/parsing_nesting/grammar.rb'
193
+ - 'lib/parsing_nesting/tree.rb'
194
+
195
+ # Offense count: 4
196
+ # Configuration parameters: MinBodyLength.
197
+ Style/GuardClause:
198
+ Exclude:
199
+ - 'app/helpers/advanced_helper.rb'
200
+ - 'lib/blacklight_advanced_search/advanced_search_builder.rb'
201
+ - 'lib/blacklight_advanced_search/render_constraints_override.rb'
202
+ - 'lib/parsing_nesting/tree.rb'
203
+
204
+ # Offense count: 76
205
+ # Cop supports --auto-correct.
206
+ # Configuration parameters: EnforcedStyle, SupportedStyles, UseHashRocketsWithSymbolValues, PreferHashRocketsForNonAlnumEndingSymbols.
207
+ # SupportedStyles: ruby19, ruby19_no_mixed_keys, hash_rockets
208
+ Style/HashSyntax:
209
+ Exclude:
210
+ - 'Rakefile'
211
+ - 'app/helpers/advanced_helper.rb'
212
+ - 'lib/blacklight_advanced_search/advanced_query_parser.rb'
213
+ - 'lib/blacklight_advanced_search/redirect_legacy_params_filter.rb'
214
+ - 'lib/blacklight_advanced_search/render_constraints_override.rb'
215
+ - 'lib/generators/blacklight_advanced_search/assets_generator.rb'
216
+ - 'lib/generators/blacklight_advanced_search/templates/advanced_controller.rb'
217
+ - 'lib/parsing_nesting/tree.rb'
218
+ - 'spec/features/blacklight_advanced_search_form_spec.rb'
219
+ - 'spec/lib/advanced_search_builder_spec.rb'
220
+ - 'spec/lib/filter_parser_spec.rb'
221
+ - 'spec/parsing_nesting/to_solr_spec.rb'
222
+ - 'spec/test_app_templates/app/controllers/catalog_controller.rb'
223
+ - 'spec/test_app_templates/lib/generators/test_app_generator.rb'
224
+
225
+ # Offense count: 1
226
+ # Configuration parameters: EnforcedStyle, SupportedStyles.
227
+ # SupportedStyles: snake_case, camelCase
228
+ Style/MethodName:
229
+ Exclude:
230
+ - 'spec/lib/filter_parser_spec.rb'
231
+
232
+ # Offense count: 1
233
+ # Cop supports --auto-correct.
234
+ # Configuration parameters: EnforcedStyle, SupportedStyles.
235
+ # SupportedStyles: symmetrical, new_line, same_line
236
+ Style/MultilineArrayBraceLayout:
237
+ Exclude:
238
+ - 'spec/parsing_nesting/consuming_spec.rb'
239
+
240
+ # Offense count: 1
241
+ # Cop supports --auto-correct.
242
+ # Configuration parameters: EnforcedStyle, SupportedStyles.
243
+ # SupportedStyles: symmetrical, new_line, same_line
244
+ Style/MultilineHashBraceLayout:
245
+ Exclude:
246
+ - 'spec/lib/deep_merge_spec.rb'
247
+
248
+ # Offense count: 2
249
+ # Cop supports --auto-correct.
250
+ # Configuration parameters: EnforcedStyle, SupportedStyles.
251
+ # SupportedStyles: symmetrical, new_line, same_line
252
+ Style/MultilineMethodCallBraceLayout:
253
+ Exclude:
254
+ - 'lib/blacklight_advanced_search/render_constraints_override.rb'
255
+
256
+ # Offense count: 10
257
+ # Cop supports --auto-correct.
258
+ # Configuration parameters: EnforcedStyle, SupportedStyles, IndentationWidth.
259
+ # SupportedStyles: aligned, indented
260
+ Style/MultilineOperationIndentation:
261
+ Exclude:
262
+ - 'lib/blacklight_advanced_search/advanced_search_builder.rb'
263
+ - 'lib/blacklight_advanced_search/controller.rb'
264
+ - 'lib/parsing_nesting/grammar.rb'
265
+ - 'lib/parsing_nesting/tree.rb'
266
+
267
+ # Offense count: 7
268
+ # Cop supports --auto-correct.
269
+ # Configuration parameters: AllowSafeAssignment.
270
+ Style/ParenthesesAroundCondition:
271
+ Exclude:
272
+ - 'lib/blacklight_advanced_search.rb'
273
+ - 'lib/blacklight_advanced_search/catalog_helper_override.rb'
274
+ - 'lib/blacklight_advanced_search/render_constraints_override.rb'
275
+
276
+ # Offense count: 4
277
+ # Cop supports --auto-correct.
278
+ Style/PerlBackrefs:
279
+ Exclude:
280
+ - 'spec/parsing_nesting/to_solr_spec.rb'
281
+
282
+ # Offense count: 2
283
+ # Configuration parameters: NamePrefix, NamePrefixBlacklist, NameWhitelist.
284
+ # NamePrefix: is_, has_, have_
285
+ # NamePrefixBlacklist: is_, has_, have_
286
+ # NameWhitelist: is_a?
287
+ Style/PredicateName:
288
+ Exclude:
289
+ - 'spec/**/*'
290
+ - 'lib/blacklight_advanced_search/advanced_search_builder.rb'
291
+ - 'lib/blacklight_advanced_search/controller.rb'
292
+
293
+ # Offense count: 5
294
+ # Cop supports --auto-correct.
295
+ Style/PreferredHashMethods:
296
+ Exclude:
297
+ - 'lib/parsing_nesting/tree.rb'
298
+
299
+ # Offense count: 6
300
+ # Cop supports --auto-correct.
301
+ Style/RedundantSelf:
302
+ Exclude:
303
+ - 'lib/blacklight_advanced_search/advanced_search_builder.rb'
304
+ - 'lib/blacklight_advanced_search/render_constraints_override.rb'
305
+ - 'lib/blacklight_advanced_search/version.rb'
306
+ - 'lib/parsing_nesting/tree.rb'
307
+
308
+ # Offense count: 1
309
+ # Cop supports --auto-correct.
310
+ # Configuration parameters: SupportedStyles.
311
+ # SupportedStyles: use_perl_names, use_english_names
312
+ Style/SpecialGlobalVars:
313
+ EnforcedStyle: use_perl_names
314
+
315
+ # Offense count: 430
316
+ # Cop supports --auto-correct.
317
+ # Configuration parameters: EnforcedStyle, SupportedStyles, ConsistentQuotesInMultiline.
318
+ # SupportedStyles: single_quotes, double_quotes
319
+ Style/StringLiterals:
320
+ Enabled: false
321
+
322
+ # Offense count: 1
323
+ # Cop supports --auto-correct.
324
+ # Configuration parameters: EnforcedStyle, SupportedStyles.
325
+ # SupportedStyles: single_quotes, double_quotes
326
+ Style/StringLiteralsInInterpolation:
327
+ Exclude:
328
+ - 'lib/parsing_nesting/tree.rb'
329
+
330
+ # Offense count: 9
331
+ # Cop supports --auto-correct.
332
+ # Configuration parameters: IgnoredMethods.
333
+ # IgnoredMethods: respond_to, define_method
334
+ Style/SymbolProc:
335
+ Exclude:
336
+ - 'lib/parsing_nesting/tree.rb'
337
+ - 'spec/spec_helper.rb'
338
+
339
+ # Offense count: 1
340
+ # Cop supports --auto-correct.
341
+ # Configuration parameters: AllowNamedUnderscoreVariables.
342
+ Style/TrailingUnderscoreVariable:
343
+ Exclude:
344
+ - 'app/controllers/blacklight_advanced_search/advanced_controller.rb'
345
+
346
+ # Offense count: 2
347
+ # Configuration parameters: EnforcedStyle, SupportedStyles.
348
+ # SupportedStyles: snake_case, camelCase
349
+ Style/VariableName:
350
+ Exclude:
351
+ - 'lib/parsing_nesting/tree.rb'
data/.solr_wrapper.yml ADDED
@@ -0,0 +1,5 @@
1
+ # Place any default configuration for solr_wrapper here
2
+ # port: 8983
3
+ collection:
4
+ dir: solr/conf/
5
+ name: blacklight-core
data/.travis.yml CHANGED
@@ -2,13 +2,8 @@ notifications:
2
2
  email: false
3
3
 
4
4
  rvm:
5
- - 2.2
6
- - 2.1
7
- # - 1.9.3
8
- # - jruby-19mode
9
- before_install:
10
- - rvm @global do gem uninstall bundler -a -x
11
- - rvm @global do gem install bundler -v 1.10.6
5
+ - 2.3.1
6
+ - 2.2.5
12
7
 
13
8
  notifications:
14
9
  irc: "irc.freenode.org#blacklight"
@@ -17,3 +12,5 @@ notifications:
17
12
  env:
18
13
  global:
19
14
  - NOKOGIRI_USE_SYSTEM_LIBRARIES=true
15
+
16
+ jdk: oraclejdk8
data/Gemfile CHANGED
@@ -3,10 +3,10 @@ source 'http://rubygems.org'
3
3
  gemspec
4
4
 
5
5
  # BEGIN ENGINE_CART BLOCK
6
- # engine_cart: 0.8.0
7
- # engine_cart stanza: 0.8.0
6
+ # engine_cart: 0.10.0
7
+ # engine_cart stanza: 0.10.0
8
8
  # the below comes from engine_cart, a gem used to test this Rails engine gem in the context of a Rails app.
9
- file = File.expand_path("Gemfile", ENV['ENGINE_CART_DESTINATION'] || ENV['RAILS_ROOT'] || File.expand_path(".internal_test_app", File.dirname(__FILE__)))
9
+ file = File.expand_path('Gemfile', ENV['ENGINE_CART_DESTINATION'] || ENV['RAILS_ROOT'] || File.expand_path('.internal_test_app', File.dirname(__FILE__)))
10
10
  if File.exist?(file)
11
11
  begin
12
12
  eval_gemfile file
@@ -17,15 +17,22 @@ if File.exist?(file)
17
17
  else
18
18
  Bundler.ui.warn "[EngineCart] Unable to find test application dependencies in #{file}, using placeholder dependencies"
19
19
 
20
- gem 'rails', ENV['RAILS_VERSION'] if ENV['RAILS_VERSION']
20
+ if ENV['RAILS_VERSION']
21
+ if ENV['RAILS_VERSION'] == 'edge'
22
+ gem 'rails', github: 'rails/rails'
23
+ ENV['ENGINE_CART_RAILS_OPTIONS'] = '--edge --skip-turbolinks'
24
+ else
25
+ gem 'rails', ENV['RAILS_VERSION']
26
+ end
27
+ end
21
28
 
22
- if ENV['RAILS_VERSION'].nil? || ENV['RAILS_VERSION'] =~ /^4.2/
23
- gem 'bootstrap-sass', '>= 3.3.5.1'
24
- gem 'responders', "~> 2.0"
25
- gem 'sass-rails', ">= 5.0"
26
- else
27
- gem 'bootstrap-sass', '< 3.3.5' # 3.3.5 requires sass 3.3, incompatible with sass-rails 4.x
28
- gem 'sass-rails', "< 5.0"
29
+ case ENV['RAILS_VERSION']
30
+ when /^4.2/
31
+ gem 'responders', '~> 2.0'
32
+ gem 'sass-rails', '>= 5.0'
33
+ gem 'coffee-rails', '~> 4.1.0'
34
+ when /^4.[01]/
35
+ gem 'sass-rails', '< 5.0'
29
36
  end
30
37
  end
31
38
  # END ENGINE_CART BLOCK