blacklight_range_limit 6.3.3 → 6.4.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/.solr_wrapper.yml +1 -0
- data/.travis.yml +4 -3
- data/Gemfile +4 -0
- data/VERSION +1 -1
- data/blacklight_range_limit.gemspec +6 -3
- data/lib/blacklight_range_limit/range_limit_builder.rb +21 -19
- data/lib/blacklight_range_limit/segment_calculation.rb +3 -1
- data/lib/blacklight_range_limit/view_helper_override.rb +26 -26
- data/spec/features/a_javascript_spec.rb +25 -0
- data/spec/lib/blacklight_range_limit/segment_calculation_spec.rb +14 -0
- data/spec/lib/blacklight_range_limit/view_helper_override_helper_spec.rb +120 -0
- data/spec/spec_helper.rb +15 -0
- data/spec/test_app_templates/Gemfile.extra +1 -0
- metadata +69 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: d1d06f2026c9872ba165877b0d2e5a533e4522ebe0bc273b46586ce916708db5
|
4
|
+
data.tar.gz: 7d7cae7865815f99228acb3264b59499d9a313f219f69e8bd47090fbc98e767c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4cd3f8e9c6d1f32a9a1ff1b8b2ff66b7619d4b45f88a85f4d15c80b38501f681d250ead319b823ef19b3d10249bfc16291d430f4a44c023985cdeb46ae112370
|
7
|
+
data.tar.gz: 3f5a12bedc924cea811b1ad562ae1df9cbb6499b1015143206c64c36b86994eb5441ab968290524324e9a62a7c462a083d3f606c3831faf5e7e57c6b68ed7997
|
data/.solr_wrapper.yml
CHANGED
data/.travis.yml
CHANGED
@@ -4,10 +4,11 @@ notifications:
|
|
4
4
|
language: ruby
|
5
5
|
sudo: false
|
6
6
|
rvm:
|
7
|
-
- 2.
|
7
|
+
- 2.5.8
|
8
|
+
- 2.6.5
|
8
9
|
|
9
10
|
before_install:
|
10
|
-
-
|
11
|
+
- google-chrome-stable --headless --disable-gpu --remote-debugging-port=9222 http://localhost &
|
11
12
|
|
12
13
|
notifications:
|
13
14
|
irc: "irc.freenode.org#blacklight"
|
@@ -17,4 +18,4 @@ notifications:
|
|
17
18
|
global_env:
|
18
19
|
- NOKOGIRI_USE_SYSTEM_LIBRARIES=true
|
19
20
|
|
20
|
-
jdk:
|
21
|
+
jdk: oraclejdk9
|
data/Gemfile
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
6.
|
1
|
+
6.4.0
|
@@ -17,15 +17,18 @@ Gem::Specification.new do |s|
|
|
17
17
|
|
18
18
|
s.license = 'Apache 2.0'
|
19
19
|
|
20
|
-
s.add_dependency 'rails', '>=
|
20
|
+
s.add_dependency 'rails', '>= 4.2', '< 6'
|
21
21
|
s.add_dependency 'jquery-rails' # our JS needs jquery_rails
|
22
|
-
s.add_dependency 'blacklight', '>= 6.0.
|
22
|
+
s.add_dependency 'blacklight', '>= 6.10.0', '< 7.0.0'
|
23
23
|
|
24
|
+
s.add_development_dependency 'chromedriver-helper'
|
24
25
|
s.add_development_dependency 'rspec', '~> 3.0'
|
25
26
|
s.add_development_dependency 'rspec-rails'
|
26
27
|
s.add_development_dependency 'capybara'
|
27
28
|
s.add_development_dependency 'sqlite3'
|
28
29
|
s.add_development_dependency 'launchy'
|
29
|
-
s.add_development_dependency '
|
30
|
+
s.add_development_dependency 'selenium-webdriver'
|
31
|
+
s.add_development_dependency 'solr_wrapper', '~> 2.2'
|
30
32
|
s.add_development_dependency 'engine_cart', '~> 1.0'
|
33
|
+
s.add_development_dependency 'webdrivers'
|
31
34
|
end
|
@@ -12,46 +12,48 @@ module BlacklightRangeLimit
|
|
12
12
|
|
13
13
|
# Method added to to fetch proper things for date ranges.
|
14
14
|
def add_range_limit_params(solr_params)
|
15
|
-
ranged_facet_configs =
|
16
|
-
blacklight_config.facet_fields.select { |key, config| config.range }
|
15
|
+
ranged_facet_configs =
|
16
|
+
blacklight_config.facet_fields.select { |key, config| config.range }
|
17
17
|
# In ruby 1.8, hash.select returns an array of pairs, in ruby 1.9
|
18
|
-
# it returns a hash. Turn it into a hash either way.
|
18
|
+
# it returns a hash. Turn it into a hash either way.
|
19
19
|
ranged_facet_configs = Hash[ ranged_facet_configs ] unless ranged_facet_configs.kind_of?(Hash)
|
20
|
-
|
20
|
+
|
21
21
|
ranged_facet_configs.each_pair do |solr_field, config|
|
22
22
|
solr_params["stats"] = "true"
|
23
23
|
solr_params["stats.field"] ||= []
|
24
|
-
solr_params["stats.field"] << solr_field
|
25
|
-
|
24
|
+
solr_params["stats.field"] << solr_field
|
25
|
+
|
26
|
+
range_config = BlacklightRangeLimit.range_config(blacklight_config, config.field)
|
27
|
+
|
26
28
|
hash = blacklight_params["range"] && blacklight_params["range"][solr_field] ?
|
27
29
|
blacklight_params["range"][solr_field] :
|
28
30
|
{}
|
29
|
-
|
31
|
+
|
30
32
|
if !hash["missing"].blank?
|
31
33
|
# missing specified in request params
|
32
34
|
solr_params[:fq] ||= []
|
33
35
|
solr_params[:fq] << "-#{solr_field}:[* TO *]"
|
34
|
-
|
36
|
+
|
35
37
|
elsif !(hash["begin"].blank? && hash["end"].blank?)
|
36
38
|
# specified in request params, begin and/or end, might just have one
|
37
39
|
start = hash["begin"].blank? ? "*" : hash["begin"]
|
38
40
|
finish = hash["end"].blank? ? "*" : hash["end"]
|
39
|
-
|
41
|
+
|
40
42
|
solr_params[:fq] ||= []
|
41
43
|
solr_params[:fq] << "#{solr_field}: [#{start} TO #{finish}]"
|
42
|
-
|
43
|
-
if (
|
44
|
+
|
45
|
+
if (range_config[:segments] != false && start != "*" && finish != "*")
|
44
46
|
# Add in our calculated segments, can only do with both boundaries.
|
45
47
|
add_range_segments_to_solr!(solr_params, solr_field, start.to_i, finish.to_i)
|
46
48
|
end
|
47
|
-
|
48
|
-
elsif (
|
49
|
-
boundaries =
|
49
|
+
|
50
|
+
elsif (range_config[:segments] != false &&
|
51
|
+
boundaries = range_config[:assumed_boundaries])
|
50
52
|
# assumed_boundaries in config
|
51
53
|
add_range_segments_to_solr!(solr_params, solr_field, boundaries[0], boundaries[1])
|
52
54
|
end
|
53
55
|
end
|
54
|
-
|
56
|
+
|
55
57
|
return solr_params
|
56
58
|
end
|
57
59
|
|
@@ -59,10 +61,10 @@ module BlacklightRangeLimit
|
|
59
61
|
# Another processing method, this one is NOT included in default processing chain,
|
60
62
|
# it is specifically swapped in *instead of* add_range_limit_params for
|
61
63
|
# certain ajax requests that only want to fetch range limit segments for
|
62
|
-
# ONE field.
|
64
|
+
# ONE field.
|
63
65
|
#
|
64
66
|
# It turns off facetting and sets rows to 0 as well, only results for
|
65
|
-
# single specified field are needed.
|
67
|
+
# single specified field are needed.
|
66
68
|
#
|
67
69
|
# Specified field and parameters are specified in incoming parameters
|
68
70
|
# range_field, range_start, range_end
|
@@ -72,13 +74,13 @@ module BlacklightRangeLimit
|
|
72
74
|
finish = blacklight_params[:range_end].to_i
|
73
75
|
|
74
76
|
add_range_segments_to_solr!(solr_params, solr_field, start, finish )
|
75
|
-
|
77
|
+
|
76
78
|
# Remove all field faceting for efficiency, we won't be using it.
|
77
79
|
solr_params.delete("facet.field")
|
78
80
|
solr_params.delete("facet.field".to_sym)
|
79
81
|
|
80
82
|
# We don't need any actual rows either
|
81
|
-
solr_params[:rows] = 0
|
83
|
+
solr_params[:rows] = 0
|
82
84
|
|
83
85
|
return solr_params
|
84
86
|
end
|
@@ -16,6 +16,8 @@ module BlacklightRangeLimit
|
|
16
16
|
|
17
17
|
field_config = BlacklightRangeLimit.range_config(blacklight_config, solr_field)
|
18
18
|
|
19
|
+
return solr_params unless field_config
|
20
|
+
|
19
21
|
solr_params[:"facet.query"] ||= []
|
20
22
|
|
21
23
|
boundaries = boundaries_for_range_facets(min, max, (field_config[:num_segments] || 10) )
|
@@ -28,7 +30,7 @@ module BlacklightRangeLimit
|
|
28
30
|
solr_params[:"facet.query"] << "#{solr_field}:[#{first} TO #{last}]"
|
29
31
|
end
|
30
32
|
|
31
|
-
|
33
|
+
solr_params
|
32
34
|
end
|
33
35
|
|
34
36
|
# returns an array of 'boundaries' for producing approx num_div
|
@@ -42,39 +42,26 @@
|
|
42
42
|
end
|
43
43
|
|
44
44
|
def render_constraints_filters(my_params = params)
|
45
|
-
content = super(my_params)
|
46
45
|
# add a constraint for ranges?
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
:escape_value => false,
|
55
|
-
:remove => remove_range_param(solr_field, my_params)
|
56
|
-
)
|
57
|
-
end
|
46
|
+
range_params(my_params).keys.each_with_object(super) do |solr_field, content|
|
47
|
+
content << render_constraint_element(
|
48
|
+
facet_field_label(solr_field),
|
49
|
+
range_display(solr_field, my_params),
|
50
|
+
escape_value: false,
|
51
|
+
remove: remove_range_param(solr_field, my_params)
|
52
|
+
)
|
58
53
|
end
|
59
|
-
return content
|
60
54
|
end
|
61
55
|
|
62
56
|
def render_search_to_s_filters(my_params)
|
63
|
-
content = super(my_params)
|
64
57
|
# add a constraint for ranges?
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
range_display(solr_field, my_params),
|
72
|
-
:escape_value => false
|
73
|
-
)
|
74
|
-
|
75
|
-
end
|
58
|
+
range_params(my_params).keys.each_with_object(super) do |solr_field, content|
|
59
|
+
content << render_search_to_s_element(
|
60
|
+
facet_field_label(solr_field),
|
61
|
+
range_display(solr_field, my_params),
|
62
|
+
escape_value: false
|
63
|
+
)
|
76
64
|
end
|
77
|
-
return content
|
78
65
|
end
|
79
66
|
|
80
67
|
def remove_range_param(solr_field, my_params = params)
|
@@ -110,4 +97,17 @@
|
|
110
97
|
BlacklightRangeLimit.range_config(blacklight_config, solr_field)
|
111
98
|
end
|
112
99
|
|
100
|
+
private
|
101
|
+
|
102
|
+
def range_params(my_params = params)
|
103
|
+
return {} unless my_params[:range].is_a?(ActionController::Parameters)
|
104
|
+
|
105
|
+
my_params[:range].select do |_solr_field, range_options|
|
106
|
+
next unless range_options
|
107
|
+
|
108
|
+
[range_options['missing'],
|
109
|
+
range_options['begin'],
|
110
|
+
range_options['end']].any?
|
111
|
+
end
|
112
|
+
end
|
113
113
|
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
describe 'JavaScript', js: true do
|
6
|
+
context 'when assumed boundaries configured' do
|
7
|
+
before do
|
8
|
+
CatalogController.blacklight_config.facet_fields['pub_date_sort'].range = {
|
9
|
+
assumed_boundaries: [1990, 2000]
|
10
|
+
}
|
11
|
+
end
|
12
|
+
|
13
|
+
after do
|
14
|
+
CatalogController.blacklight_config.facet_fields['pub_date_sort'].range = true
|
15
|
+
end
|
16
|
+
|
17
|
+
it 'should show the range limit with set boundaries' do
|
18
|
+
visit '/catalog'
|
19
|
+
|
20
|
+
click_link 'Publication Date Sort'
|
21
|
+
expect(page).to have_field :range_pub_date_sort_begin, with: '1990'
|
22
|
+
expect(page).to have_field :range_pub_date_sort_end, with: '2000'
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -4,6 +4,10 @@ RSpec.describe BlacklightRangeLimit::SegmentCalculation do
|
|
4
4
|
let(:dummy_class) do
|
5
5
|
Class.new do
|
6
6
|
include BlacklightRangeLimit::SegmentCalculation
|
7
|
+
|
8
|
+
def blacklight_config
|
9
|
+
Blacklight::Configuration.new
|
10
|
+
end
|
7
11
|
end
|
8
12
|
end
|
9
13
|
|
@@ -45,5 +49,15 @@ RSpec.describe BlacklightRangeLimit::SegmentCalculation do
|
|
45
49
|
'The min date must be before the max date'
|
46
50
|
end
|
47
51
|
end
|
52
|
+
|
53
|
+
context 'when a field that does not exist is passed in' do
|
54
|
+
let(:min) { 100 }
|
55
|
+
let(:max) { 800 }
|
56
|
+
let(:solr_field) { 'i_am_not_real' }
|
57
|
+
|
58
|
+
it 'returns the original solr_params (and does not raise an error)' do
|
59
|
+
expect(subject).to eq({})
|
60
|
+
end
|
61
|
+
end
|
48
62
|
end
|
49
63
|
end
|
@@ -0,0 +1,120 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
RSpec.describe BlacklightRangeLimit::ViewHelperOverride, type: :helper do
|
4
|
+
describe '#render_constraints_filters' do
|
5
|
+
before do
|
6
|
+
allow(helper).to receive_messages(
|
7
|
+
facet_field_label: 'Date Range',
|
8
|
+
remove_range_param: '/remove'
|
9
|
+
)
|
10
|
+
end
|
11
|
+
|
12
|
+
it 'does not return any content when the range parameter invalid' do
|
13
|
+
params = ActionController::Parameters.new(range: 'garbage')
|
14
|
+
|
15
|
+
expect(helper.render_constraints_filters(params)).to eq ''
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'renders a constraint for the given data in the range param' do
|
19
|
+
params = ActionController::Parameters.new(
|
20
|
+
range: { range_field: { 'begin' => 1900, 'end' => 2000 } }
|
21
|
+
)
|
22
|
+
constraints = helper.render_constraints_filters(params)
|
23
|
+
|
24
|
+
expect(constraints).to have_css(
|
25
|
+
'.constraint .filterName', text: 'Date Range'
|
26
|
+
)
|
27
|
+
expect(constraints).to have_css(
|
28
|
+
'.constraint .filterValue', text: '1900 to 2000'
|
29
|
+
)
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
describe 'render_search_to_s_filters' do
|
34
|
+
before do
|
35
|
+
allow(helper).to receive_messages(facet_field_label: 'Date Range')
|
36
|
+
end
|
37
|
+
|
38
|
+
it 'does not return any content when the range parameter invalid' do
|
39
|
+
params = ActionController::Parameters.new(range: 'garbage')
|
40
|
+
|
41
|
+
expect(helper.render_search_to_s_filters(params)).to eq ''
|
42
|
+
end
|
43
|
+
|
44
|
+
it 'renders a constraint for the given data in the range param' do
|
45
|
+
params = ActionController::Parameters.new(
|
46
|
+
range: { range_field: { 'begin' => 1900, 'end' => 2000 } }
|
47
|
+
)
|
48
|
+
constraints = helper.render_search_to_s_filters(params)
|
49
|
+
|
50
|
+
expect(constraints).to have_css(
|
51
|
+
'.constraint .filterName', text: 'Date Range:'
|
52
|
+
)
|
53
|
+
expect(constraints).to have_css(
|
54
|
+
'.constraint .filterValues', text: '1900 to 2000'
|
55
|
+
)
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
describe '#range_params' do
|
60
|
+
it 'handles no range input' do
|
61
|
+
expect(
|
62
|
+
helper.send(:range_params, ActionController::Parameters.new(q: 'blah'))
|
63
|
+
).to eq({})
|
64
|
+
end
|
65
|
+
|
66
|
+
it 'handles non-compliant range input' do
|
67
|
+
expect(
|
68
|
+
helper.send(:range_params, ActionController::Parameters.new(range: 'blah'))
|
69
|
+
).to eq({})
|
70
|
+
|
71
|
+
expect(
|
72
|
+
helper.send(:range_params, ActionController::Parameters.new(range: ['blah']))
|
73
|
+
).to eq({})
|
74
|
+
|
75
|
+
expect(
|
76
|
+
helper.send(:range_params, ActionController::Parameters.new(range: { 'wrong' => 'data' }))
|
77
|
+
).to eq({})
|
78
|
+
|
79
|
+
expect(
|
80
|
+
helper.send(
|
81
|
+
:range_params,
|
82
|
+
ActionController::Parameters.new(range: { field_name: { 'wrong' => 'data' } })
|
83
|
+
)
|
84
|
+
).to eq({})
|
85
|
+
end
|
86
|
+
|
87
|
+
it 'returns the range parameters that are present' do
|
88
|
+
expect(
|
89
|
+
helper.send(
|
90
|
+
:range_params,
|
91
|
+
ActionController::Parameters.new(range: { field_name: { 'missing' => true } })
|
92
|
+
).permit!.to_h
|
93
|
+
).to eq({ 'field_name' => { 'missing' => true } })
|
94
|
+
|
95
|
+
expect(
|
96
|
+
helper.send(
|
97
|
+
:range_params,
|
98
|
+
ActionController::Parameters.new(range: { field_name: { 'begin' => '1800', 'end' => '1900' } })
|
99
|
+
).permit!.to_h
|
100
|
+
).to eq({ 'field_name' => { 'begin' => '1800', 'end' => '1900' } })
|
101
|
+
|
102
|
+
expect(
|
103
|
+
helper.send(
|
104
|
+
:range_params,
|
105
|
+
ActionController::Parameters.new(
|
106
|
+
range: {
|
107
|
+
field_name: { 'begin' => '1800', 'end' => '1900' },
|
108
|
+
field_name2: { 'begin' => '1800', 'end' => '1900' }
|
109
|
+
}
|
110
|
+
)
|
111
|
+
).permit!.to_h
|
112
|
+
).to eq(
|
113
|
+
{
|
114
|
+
'field_name' => { 'begin' => '1800', 'end' => '1900' },
|
115
|
+
'field_name2' => { 'begin' => '1800', 'end' => '1900' }
|
116
|
+
}
|
117
|
+
)
|
118
|
+
end
|
119
|
+
end
|
120
|
+
end
|
data/spec/spec_helper.rb
CHANGED
@@ -5,6 +5,21 @@ EngineCart.load_application!
|
|
5
5
|
|
6
6
|
require 'rspec/rails'
|
7
7
|
require 'capybara/rspec'
|
8
|
+
require 'selenium-webdriver'
|
9
|
+
require 'webdrivers'
|
10
|
+
|
11
|
+
Capybara.javascript_driver = :headless_chrome
|
12
|
+
|
13
|
+
Capybara.register_driver :headless_chrome do |app|
|
14
|
+
Capybara::Selenium::Driver.load_selenium
|
15
|
+
browser_options = ::Selenium::WebDriver::Chrome::Options.new.tap do |opts|
|
16
|
+
opts.args << '--headless'
|
17
|
+
opts.args << '--disable-gpu'
|
18
|
+
opts.args << '--no-sandbox'
|
19
|
+
opts.args << '--window-size=1280,1696'
|
20
|
+
end
|
21
|
+
Capybara::Selenium::Driver.new(app, browser: :chrome, options: browser_options)
|
22
|
+
end
|
8
23
|
|
9
24
|
RSpec.configure do |config|
|
10
25
|
# rspec-rails 3 will no longer automatically infer an example group's spec type
|
@@ -0,0 +1 @@
|
|
1
|
+
gem 'sprockets', '< 4'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: blacklight_range_limit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 6.
|
4
|
+
version: 6.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jonathan Rochkind
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2020-04-01 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
@@ -17,14 +17,20 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - ">="
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: '
|
20
|
+
version: '4.2'
|
21
|
+
- - "<"
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: '6'
|
21
24
|
type: :runtime
|
22
25
|
prerelease: false
|
23
26
|
version_requirements: !ruby/object:Gem::Requirement
|
24
27
|
requirements:
|
25
28
|
- - ">="
|
26
29
|
- !ruby/object:Gem::Version
|
27
|
-
version: '
|
30
|
+
version: '4.2'
|
31
|
+
- - "<"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '6'
|
28
34
|
- !ruby/object:Gem::Dependency
|
29
35
|
name: jquery-rails
|
30
36
|
requirement: !ruby/object:Gem::Requirement
|
@@ -45,14 +51,34 @@ dependencies:
|
|
45
51
|
requirements:
|
46
52
|
- - ">="
|
47
53
|
- !ruby/object:Gem::Version
|
48
|
-
version: 6.0
|
54
|
+
version: 6.10.0
|
55
|
+
- - "<"
|
56
|
+
- !ruby/object:Gem::Version
|
57
|
+
version: 7.0.0
|
49
58
|
type: :runtime
|
50
59
|
prerelease: false
|
51
60
|
version_requirements: !ruby/object:Gem::Requirement
|
52
61
|
requirements:
|
53
62
|
- - ">="
|
54
63
|
- !ruby/object:Gem::Version
|
55
|
-
version: 6.0
|
64
|
+
version: 6.10.0
|
65
|
+
- - "<"
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
version: 7.0.0
|
68
|
+
- !ruby/object:Gem::Dependency
|
69
|
+
name: chromedriver-helper
|
70
|
+
requirement: !ruby/object:Gem::Requirement
|
71
|
+
requirements:
|
72
|
+
- - ">="
|
73
|
+
- !ruby/object:Gem::Version
|
74
|
+
version: '0'
|
75
|
+
type: :development
|
76
|
+
prerelease: false
|
77
|
+
version_requirements: !ruby/object:Gem::Requirement
|
78
|
+
requirements:
|
79
|
+
- - ">="
|
80
|
+
- !ruby/object:Gem::Version
|
81
|
+
version: '0'
|
56
82
|
- !ruby/object:Gem::Dependency
|
57
83
|
name: rspec
|
58
84
|
requirement: !ruby/object:Gem::Requirement
|
@@ -123,20 +149,34 @@ dependencies:
|
|
123
149
|
- - ">="
|
124
150
|
- !ruby/object:Gem::Version
|
125
151
|
version: '0'
|
152
|
+
- !ruby/object:Gem::Dependency
|
153
|
+
name: selenium-webdriver
|
154
|
+
requirement: !ruby/object:Gem::Requirement
|
155
|
+
requirements:
|
156
|
+
- - ">="
|
157
|
+
- !ruby/object:Gem::Version
|
158
|
+
version: '0'
|
159
|
+
type: :development
|
160
|
+
prerelease: false
|
161
|
+
version_requirements: !ruby/object:Gem::Requirement
|
162
|
+
requirements:
|
163
|
+
- - ">="
|
164
|
+
- !ruby/object:Gem::Version
|
165
|
+
version: '0'
|
126
166
|
- !ruby/object:Gem::Dependency
|
127
167
|
name: solr_wrapper
|
128
168
|
requirement: !ruby/object:Gem::Requirement
|
129
169
|
requirements:
|
130
170
|
- - "~>"
|
131
171
|
- !ruby/object:Gem::Version
|
132
|
-
version: '
|
172
|
+
version: '2.2'
|
133
173
|
type: :development
|
134
174
|
prerelease: false
|
135
175
|
version_requirements: !ruby/object:Gem::Requirement
|
136
176
|
requirements:
|
137
177
|
- - "~>"
|
138
178
|
- !ruby/object:Gem::Version
|
139
|
-
version: '
|
179
|
+
version: '2.2'
|
140
180
|
- !ruby/object:Gem::Dependency
|
141
181
|
name: engine_cart
|
142
182
|
requirement: !ruby/object:Gem::Requirement
|
@@ -151,6 +191,20 @@ dependencies:
|
|
151
191
|
- - "~>"
|
152
192
|
- !ruby/object:Gem::Version
|
153
193
|
version: '1.0'
|
194
|
+
- !ruby/object:Gem::Dependency
|
195
|
+
name: webdrivers
|
196
|
+
requirement: !ruby/object:Gem::Requirement
|
197
|
+
requirements:
|
198
|
+
- - ">="
|
199
|
+
- !ruby/object:Gem::Version
|
200
|
+
version: '0'
|
201
|
+
type: :development
|
202
|
+
prerelease: false
|
203
|
+
version_requirements: !ruby/object:Gem::Requirement
|
204
|
+
requirements:
|
205
|
+
- - ">="
|
206
|
+
- !ruby/object:Gem::Version
|
207
|
+
version: '0'
|
154
208
|
description:
|
155
209
|
email:
|
156
210
|
- blacklight-development@googlegroups.com
|
@@ -214,11 +268,14 @@ files:
|
|
214
268
|
- solr/conf/xslt/example_rss.xsl
|
215
269
|
- solr/conf/xslt/luke.xsl
|
216
270
|
- solr/sample_solr_documents.yml
|
271
|
+
- spec/features/a_javascript_spec.rb
|
217
272
|
- spec/features/blacklight_range_limit_spec.rb
|
218
273
|
- spec/fixtures/solr_documents/zero_year.yml
|
219
274
|
- spec/helpers/blacklight_range_limit_helper_spec.rb
|
220
275
|
- spec/lib/blacklight_range_limit/segment_calculation_spec.rb
|
276
|
+
- spec/lib/blacklight_range_limit/view_helper_override_helper_spec.rb
|
221
277
|
- spec/spec_helper.rb
|
278
|
+
- spec/test_app_templates/Gemfile.extra
|
222
279
|
- spec/test_app_templates/lib/generators/test_app_generator.rb
|
223
280
|
- vendor/assets/javascripts/bootstrap-slider.js
|
224
281
|
- vendor/assets/javascripts/flot/excanvas.min.js
|
@@ -244,15 +301,17 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
244
301
|
- !ruby/object:Gem::Version
|
245
302
|
version: '0'
|
246
303
|
requirements: []
|
247
|
-
|
248
|
-
rubygems_version: 2.6.11
|
304
|
+
rubygems_version: 3.0.3
|
249
305
|
signing_key:
|
250
306
|
specification_version: 4
|
251
307
|
summary: Blacklight Range Limit plugin
|
252
308
|
test_files:
|
309
|
+
- spec/features/a_javascript_spec.rb
|
253
310
|
- spec/features/blacklight_range_limit_spec.rb
|
254
311
|
- spec/fixtures/solr_documents/zero_year.yml
|
255
312
|
- spec/helpers/blacklight_range_limit_helper_spec.rb
|
256
313
|
- spec/lib/blacklight_range_limit/segment_calculation_spec.rb
|
314
|
+
- spec/lib/blacklight_range_limit/view_helper_override_helper_spec.rb
|
257
315
|
- spec/spec_helper.rb
|
316
|
+
- spec/test_app_templates/Gemfile.extra
|
258
317
|
- spec/test_app_templates/lib/generators/test_app_generator.rb
|