blacklight_advanced_search 6.0.2 → 6.1.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.
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