blacklight 5.0.0.pre1 → 5.0.0.pre2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +0 -4
- data/VERSION +1 -1
- data/app/assets/stylesheets/blacklight/_bookmark.css.scss +4 -0
- data/app/assets/stylesheets/blacklight/_catalog.css.scss +9 -13
- data/app/helpers/blacklight/blacklight_helper_behavior.rb +15 -9
- data/app/helpers/blacklight/catalog_helper_behavior.rb +8 -25
- data/app/helpers/blacklight/facets_helper_behavior.rb +1 -1
- data/app/helpers/blacklight/hash_as_hidden_fields_helper_behavior.rb +1 -1
- data/app/helpers/blacklight/render_constraints_helper_behavior.rb +2 -2
- data/app/helpers/blacklight/search_history_constraints_helper_behavior.rb +1 -1
- data/app/views/bookmarks/index.html.erb +1 -1
- data/app/views/catalog/_did_you_mean.html.erb +1 -1
- data/app/views/catalog/_document.html.erb +4 -10
- data/app/views/catalog/{_document_header.html.erb → _index_header_default.html.erb} +6 -3
- data/app/views/catalog/_paginate_compact.html.erb +5 -0
- data/app/views/catalog/_show_header_default.html.erb +2 -0
- data/app/views/catalog/index.html.erb +1 -1
- data/app/views/catalog/show.html.erb +4 -10
- data/lib/blacklight.rb +0 -1
- data/lib/blacklight/configuration.rb +2 -2
- data/lib/blacklight/controller.rb +0 -1
- data/lib/blacklight/solr/document.rb +2 -0
- data/lib/blacklight/solr/document/schema_org.rb +7 -0
- data/lib/blacklight/solr_response.rb +4 -0
- data/lib/blacklight/user.rb +0 -6
- data/spec/controllers/application_controller_spec.rb +1 -2
- data/spec/controllers/bookmarks_controller_spec.rb +8 -9
- data/spec/controllers/catalog_controller_spec.rb +72 -73
- data/spec/controllers/saved_searches_controller_spec.rb +1 -2
- data/spec/controllers/search_history_controller_spec.rb +9 -10
- data/spec/features/search_pagination_spec.rb +1 -0
- data/spec/features/search_results_spec.rb +1 -0
- data/spec/features/search_spec.rb +1 -0
- data/spec/helpers/blacklight_helper_spec.rb +103 -93
- data/spec/helpers/catalog_helper_spec.rb +34 -21
- data/spec/helpers/facets_helper_spec.rb +41 -41
- data/spec/helpers/hash_as_hidden_fields_spec.rb +8 -9
- data/spec/helpers/render_constraints_helper_spec.rb +3 -3
- data/spec/helpers/search_history_constraints_helper_spec.rb +13 -14
- data/spec/lib/{blacklight_configurable_spec.rb → blacklight/configurable_spec.rb} +12 -14
- data/spec/lib/{blacklight_configuration_spec.rb → blacklight/configuration_spec.rb} +67 -69
- data/spec/lib/{facet_paginator_spec.rb → blacklight/facet_paginator_spec.rb} +13 -16
- data/spec/lib/{search_fields_spec.rb → blacklight/search_fields_spec.rb} +14 -15
- data/spec/lib/{blacklight_solr_document_dublin_core_spec.rb → blacklight/solr/document/dublin_core_spec.rb} +7 -8
- data/spec/lib/{blacklight_email_spec.rb → blacklight/solr/document/email_spec.rb} +5 -6
- data/spec/lib/{blacklight_solr_document_more_like_this_spec.rb → blacklight/solr/document/more_like_this_spec.rb} +5 -5
- data/spec/lib/{blacklight_sms_spec.rb → blacklight/solr/document/sms_spec.rb} +5 -6
- data/spec/lib/{blacklight_solr_document_spec.rb → blacklight/solr/document_spec.rb} +37 -39
- data/spec/lib/{solr_helper_spec.rb → blacklight/solr_helper_spec.rb} +183 -183
- data/spec/lib/{blacklight_solr_response_spec.rb → blacklight/solr_response_spec.rb} +20 -16
- data/spec/lib/{blacklight_user_spec.rb → blacklight/user_spec.rb} +3 -4
- data/spec/lib/blacklight_spec.rb +6 -7
- data/spec/lib/tasks/blacklight_task_spec.rb +2 -3
- data/spec/lib/utils_spec.rb +13 -14
- data/spec/models/bookmark_spec.rb +4 -4
- data/spec/models/record_mailer_spec.rb +15 -15
- data/spec/models/search_spec.rb +7 -7
- data/spec/models/solr_document_spec.rb +4 -4
- data/spec/routing/catalog_routing_spec.rb +12 -12
- data/spec/spec_helper.rb +1 -3
- data/spec/test_app_templates/Gemfile.extra +1 -2
- data/spec/views/catalog/_constraints_element.html.erb_spec.rb +12 -13
- data/spec/views/catalog/_document.html.erb_spec.rb +19 -2
- data/spec/views/catalog/_document_list.html.erb_spec.rb +0 -1
- data/spec/views/catalog/_facets.html.erb_spec.rb +5 -5
- data/spec/views/catalog/_index_default.erb_spec.rb +10 -11
- data/spec/views/catalog/_paginate_compact.html.erb_spec.rb +45 -0
- data/spec/views/catalog/_search_header.erb_spec.rb +0 -1
- data/spec/views/catalog/_show_default.erb_spec.rb +10 -11
- data/spec/views/catalog/_show_sidebar.erb_spec.rb +2 -3
- data/spec/views/catalog/index.atom.builder_spec.rb +26 -27
- data/spec/views/catalog/index.html.erb_spec.rb +1 -1
- data/spec/views/catalog/show.html.erb_spec.rb +56 -0
- data/tasks/blacklight.rake +1 -1
- metadata +65 -64
- data/lib/blacklight/legacy_controller_methods.rb +0 -26
- data/spec/rcov.opts +0 -3
- data/spec/support/assert_difference.rb +0 -17
@@ -1,6 +1,4 @@
|
|
1
|
-
|
2
|
-
# -*- coding: UTF-8 -*-
|
3
|
-
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
1
|
+
require 'spec_helper'
|
4
2
|
|
5
3
|
describe "Blacklight::Configurable" do
|
6
4
|
|
@@ -56,7 +54,7 @@ describe "Blacklight::Configurable" do
|
|
56
54
|
Blacklight::Configurable.default_configuration = Blacklight::Configuration.new :a => 1
|
57
55
|
|
58
56
|
a.send(:include, Blacklight::Configurable)
|
59
|
-
a.blacklight_config.a.
|
57
|
+
expect(a.blacklight_config.a).to eq 1
|
60
58
|
end
|
61
59
|
|
62
60
|
it "has configure_blacklight convenience method" do
|
@@ -67,7 +65,7 @@ describe "Blacklight::Configurable" do
|
|
67
65
|
config.my_key = 'value'
|
68
66
|
end
|
69
67
|
|
70
|
-
klass.blacklight_config.my_key.
|
68
|
+
expect(klass.blacklight_config.my_key).to eq 'value'
|
71
69
|
end
|
72
70
|
|
73
71
|
it "allows the instance to set a radically different config from the class" do
|
@@ -78,8 +76,8 @@ describe "Blacklight::Configurable" do
|
|
78
76
|
instance = klass.new
|
79
77
|
instance.blacklight_config = Blacklight::Configuration.new
|
80
78
|
|
81
|
-
instance.blacklight_config.
|
82
|
-
instance.blacklight_config.foo.
|
79
|
+
expect(instance.blacklight_config).to_not eq klass.blacklight_config
|
80
|
+
expect(instance.blacklight_config.foo).to be_nil
|
83
81
|
end
|
84
82
|
|
85
83
|
it "allows instance to set it's own config seperate from class" do
|
@@ -94,11 +92,11 @@ describe "Blacklight::Configurable" do
|
|
94
92
|
|
95
93
|
instance = klass.new
|
96
94
|
instance.blacklight_config.bar << "123"
|
97
|
-
instance.blacklight_config.
|
98
|
-
klass.blacklight_config.foo.
|
99
|
-
instance.blacklight_config.foo.
|
100
|
-
klass.blacklight_config.bar.
|
101
|
-
instance.blacklight_config.bar.
|
95
|
+
expect(instance.blacklight_config).to_not eq klass.blacklight_config
|
96
|
+
expect(klass.blacklight_config.foo).to eq "bar"
|
97
|
+
expect(instance.blacklight_config.foo).to eq "bar"
|
98
|
+
expect(klass.blacklight_config.bar).to_not include("123")
|
99
|
+
expect(instance.blacklight_config.bar).to include("asd", "123")
|
102
100
|
end
|
103
101
|
|
104
102
|
it "configurable classes should not mutate the default configuration object" do
|
@@ -110,8 +108,8 @@ describe "Blacklight::Configurable" do
|
|
110
108
|
klass2.send(:include, Blacklight::Configurable)
|
111
109
|
klass2.blacklight_config.foo = "asdf"
|
112
110
|
|
113
|
-
klass.blacklight_config.foo.
|
114
|
-
klass2.blacklight_config.foo.
|
111
|
+
expect(klass.blacklight_config.foo).to eq "bar"
|
112
|
+
expect(klass2.blacklight_config.foo).to eq "asdf"
|
115
113
|
end
|
116
114
|
|
117
115
|
end
|
@@ -1,6 +1,4 @@
|
|
1
|
-
|
2
|
-
# -*- coding: UTF-8 -*-
|
3
|
-
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
1
|
+
require 'spec_helper'
|
4
2
|
|
5
3
|
describe "Blacklight::Configuration" do
|
6
4
|
|
@@ -11,8 +9,8 @@ describe "Blacklight::Configuration" do
|
|
11
9
|
it "should support arbitrary configuration values" do
|
12
10
|
@config.a = 1
|
13
11
|
|
14
|
-
@config.a.
|
15
|
-
@config[:a].
|
12
|
+
expect(@config.a).to eq 1
|
13
|
+
expect(@config[:a]).to eq 1
|
16
14
|
end
|
17
15
|
|
18
16
|
describe "initialization" do
|
@@ -23,48 +21,48 @@ describe "Blacklight::Configuration" do
|
|
23
21
|
it "should accept a block for configuration" do
|
24
22
|
config = Blacklight::Configuration.new(:a => 1) { |c| c.a = 2 }
|
25
23
|
|
26
|
-
config.a.
|
24
|
+
expect(config.a).to eq 2
|
27
25
|
|
28
26
|
config.configure { |c| c.a = 3 }
|
29
27
|
|
30
|
-
config.a.
|
28
|
+
expect(config.a).to eq 3
|
31
29
|
end
|
32
30
|
end
|
33
31
|
|
34
32
|
describe "defaults" do
|
35
33
|
it "should have a hash of default rsolr query parameters" do
|
36
|
-
@config.default_solr_params.
|
34
|
+
expect(@config.default_solr_params).to be_a_kind_of Hash
|
37
35
|
end
|
38
36
|
|
39
37
|
it "should have openstruct values for show and index parameters" do
|
40
|
-
@config.show.
|
41
|
-
@config.index.
|
38
|
+
expect(@config.show).to be_a_kind_of OpenStruct
|
39
|
+
expect(@config.index).to be_a_kind_of OpenStruct
|
42
40
|
end
|
43
41
|
|
44
42
|
it "should introspect SolrDocument for sensible defaults for show + index" do
|
45
|
-
@config.show.html_title.
|
46
|
-
@config.show.heading.
|
47
|
-
@config.index.show_link.
|
43
|
+
expect(@config.show.html_title).to eq'id'
|
44
|
+
expect(@config.show.heading).to eq 'id'
|
45
|
+
expect(@config.index.show_link).to eq'id'
|
48
46
|
end
|
49
47
|
|
50
48
|
it "should have ordered hashes for field configuration" do
|
51
|
-
@config.facet_fields.
|
52
|
-
@config.index_fields.
|
53
|
-
@config.show_fields.
|
54
|
-
@config.search_fields.
|
55
|
-
@config.show_fields.
|
56
|
-
@config.search_fields.
|
57
|
-
@config.sort_fields.
|
49
|
+
expect(@config.facet_fields).to be_a_kind_of ActiveSupport::OrderedHash
|
50
|
+
expect(@config.index_fields).to be_a_kind_of ActiveSupport::OrderedHash
|
51
|
+
expect(@config.show_fields).to be_a_kind_of ActiveSupport::OrderedHash
|
52
|
+
expect(@config.search_fields).to be_a_kind_of ActiveSupport::OrderedHash
|
53
|
+
expect(@config.show_fields).to be_a_kind_of ActiveSupport::OrderedHash
|
54
|
+
expect(@config.search_fields).to be_a_kind_of ActiveSupport::OrderedHash
|
55
|
+
expect(@config.sort_fields).to be_a_kind_of ActiveSupport::OrderedHash
|
58
56
|
end
|
59
57
|
end
|
60
58
|
|
61
59
|
describe "spell_max" do
|
62
60
|
it "should default to 5" do
|
63
|
-
Blacklight::Configuration.new.spell_max.
|
61
|
+
expect(Blacklight::Configuration.new.spell_max).to eq 5
|
64
62
|
end
|
65
63
|
|
66
64
|
it "should accept config'd value" do
|
67
|
-
Blacklight::Configuration.new(:spell_max => 10).spell_max.
|
65
|
+
expect(Blacklight::Configuration.new(:spell_max => 10).spell_max).to eq 10
|
68
66
|
end
|
69
67
|
end
|
70
68
|
|
@@ -76,8 +74,8 @@ describe "Blacklight::Configuration" do
|
|
76
74
|
@mock_facet = Blacklight::Configuration::FacetField.new
|
77
75
|
config_copy.add_facet_field "dummy_field", @mock_facet
|
78
76
|
|
79
|
-
@config.a.
|
80
|
-
@config.facet_fields.
|
77
|
+
expect(@config.a).to be_nil
|
78
|
+
expect(@config.facet_fields).to_not include(@mock_facet)
|
81
79
|
end
|
82
80
|
end
|
83
81
|
|
@@ -91,7 +89,7 @@ describe "Blacklight::Configuration" do
|
|
91
89
|
|
92
90
|
|
93
91
|
|
94
|
-
config.my_custom_fields.keys.
|
92
|
+
expect(config.my_custom_fields.keys).to include('qwerty')
|
95
93
|
end
|
96
94
|
|
97
95
|
it "should let you define a field accessor that uses an existing field-type" do
|
@@ -104,7 +102,7 @@ describe "Blacklight::Configuration" do
|
|
104
102
|
|
105
103
|
|
106
104
|
|
107
|
-
config.my_custom_facet_fields['qwerty'].
|
105
|
+
expect(config.my_custom_facet_fields['qwerty']).to be_a_kind_of(Blacklight::Configuration::FacetField)
|
108
106
|
end
|
109
107
|
|
110
108
|
end
|
@@ -113,16 +111,16 @@ describe "Blacklight::Configuration" do
|
|
113
111
|
it "should accept field name and hash form arg" do
|
114
112
|
@config.add_facet_field('format', :label => "Format", :limit => true)
|
115
113
|
|
116
|
-
@config.facet_fields["format"].
|
117
|
-
@config.facet_fields["format"]["label"].
|
118
|
-
@config.facet_fields["format"]["limit"].
|
114
|
+
expect(@config.facet_fields["format"]).to_not be_nil
|
115
|
+
expect(@config.facet_fields["format"]["label"]).to eq "Format"
|
116
|
+
expect(@config.facet_fields["format"]["limit"]).to be_true
|
119
117
|
end
|
120
118
|
|
121
119
|
it "should accept FacetField obj arg" do
|
122
120
|
@config.add_facet_field("format", Blacklight::Configuration::FacetField.new( :label => "Format"))
|
123
121
|
|
124
|
-
@config.facet_fields["format"].
|
125
|
-
@config.facet_fields["format"]["label"].
|
122
|
+
expect(@config.facet_fields["format"]).to_not be_nil
|
123
|
+
expect(@config.facet_fields["format"]["label"]).to eq "Format"
|
126
124
|
end
|
127
125
|
|
128
126
|
it "should accept field name and block form" do
|
@@ -131,8 +129,8 @@ describe "Blacklight::Configuration" do
|
|
131
129
|
facet.limit = true
|
132
130
|
end
|
133
131
|
|
134
|
-
@config.facet_fields["format"].
|
135
|
-
@config.facet_fields["format"].limit.
|
132
|
+
expect(@config.facet_fields["format"]).to_not be_nil
|
133
|
+
expect(@config.facet_fields["format"].limit).to be_true
|
136
134
|
end
|
137
135
|
|
138
136
|
it "should accept block form" do
|
@@ -141,34 +139,34 @@ describe "Blacklight::Configuration" do
|
|
141
139
|
facet.label = "Format"
|
142
140
|
end
|
143
141
|
|
144
|
-
@config.facet_fields['format'].
|
142
|
+
expect(@config.facet_fields['format']).to_not be_nil
|
145
143
|
end
|
146
144
|
|
147
145
|
it "should accept a configuration hash" do
|
148
146
|
@config.add_facet_field :field => 'format', :label => 'Format'
|
149
|
-
@config.facet_fields['format'].
|
147
|
+
expect(@config.facet_fields['format']).to_not be_nil
|
150
148
|
end
|
151
149
|
|
152
150
|
it "should accept array form" do
|
153
151
|
@config.add_facet_field([{ :field => 'format', :label => 'Format'}, { :field => 'publication_date', :label => 'Publication Date' }])
|
154
152
|
|
155
|
-
@config.facet_fields.
|
153
|
+
expect(@config.facet_fields).to have(2).fields
|
156
154
|
end
|
157
155
|
|
158
156
|
it "should create default label from titleized solr field" do
|
159
157
|
@config.add_facet_field("publication_date")
|
160
158
|
|
161
|
-
@config.facet_fields["publication_date"].label.
|
159
|
+
expect(@config.facet_fields["publication_date"].label).to eq "Publication Date"
|
162
160
|
end
|
163
161
|
|
164
162
|
it "should allow you to not show the facet in the facet bar" do
|
165
163
|
@config.add_facet_field("publication_date", :show=>false)
|
166
164
|
|
167
|
-
@config.facet_fields["publication_date"]['show'].
|
165
|
+
expect(@config.facet_fields["publication_date"]['show']).to be_false
|
168
166
|
end
|
169
167
|
|
170
168
|
it "should raise on nil solr field name" do
|
171
|
-
|
169
|
+
expect { @config.add_facet_field(nil) }.to raise_error ArgumentError
|
172
170
|
end
|
173
171
|
|
174
172
|
end
|
@@ -177,31 +175,31 @@ describe "Blacklight::Configuration" do
|
|
177
175
|
it "takes hash form" do
|
178
176
|
@config.add_index_field("title_display", :label => "Title")
|
179
177
|
|
180
|
-
@config.index_fields["title_display"].
|
181
|
-
@config.index_fields["title_display"].label.
|
178
|
+
expect(@config.index_fields["title_display"]).to_not be_nil
|
179
|
+
expect(@config.index_fields["title_display"].label).to eq "Title"
|
182
180
|
end
|
183
181
|
it "takes IndexField param" do
|
184
182
|
@config.add_index_field("title_display", Blacklight::Configuration::IndexField.new(:field => "title_display", :label => "Title"))
|
185
183
|
|
186
|
-
@config.index_fields["title_display"].
|
187
|
-
@config.index_fields["title_display"].label.
|
184
|
+
expect(@config.index_fields["title_display"]).to_not be_nil
|
185
|
+
expect(@config.index_fields["title_display"].label).to eq "Title"
|
188
186
|
end
|
189
187
|
it "takes block form" do
|
190
188
|
@config.add_index_field("title_display") do |field|
|
191
189
|
field.label = "Title"
|
192
190
|
end
|
193
|
-
@config.index_fields["title_display"].
|
194
|
-
@config.index_fields["title_display"].label.
|
191
|
+
expect(@config.index_fields["title_display"]).to_not be_nil
|
192
|
+
expect(@config.index_fields["title_display"].label).to eq "Title"
|
195
193
|
end
|
196
194
|
|
197
195
|
it "creates default label from titleized field" do
|
198
196
|
@config.add_index_field("title_display")
|
199
197
|
|
200
|
-
@config.index_fields["title_display"].label.
|
198
|
+
expect(@config.index_fields["title_display"].label).to eq "Title Display"
|
201
199
|
end
|
202
200
|
|
203
201
|
it "should raise on nil solr field name" do
|
204
|
-
|
202
|
+
expect { @config.add_index_field(nil) }.to raise_error ArgumentError
|
205
203
|
end
|
206
204
|
|
207
205
|
end
|
@@ -210,32 +208,32 @@ describe "Blacklight::Configuration" do
|
|
210
208
|
it "takes hash form" do
|
211
209
|
@config.add_show_field("title_display", :label => "Title")
|
212
210
|
|
213
|
-
@config.show_fields["title_display"].
|
214
|
-
@config.show_fields["title_display"].label.
|
211
|
+
expect(@config.show_fields["title_display"]).to_not be_nil
|
212
|
+
expect(@config.show_fields["title_display"].label).to eq "Title"
|
215
213
|
end
|
216
214
|
it "takes ShowField argument" do
|
217
215
|
@config.add_show_field("title_display", Blacklight::Configuration::ShowField.new(:field => "title_display", :label => "Title"))
|
218
216
|
|
219
|
-
@config.show_fields["title_display"].
|
220
|
-
@config.show_fields["title_display"].label.
|
217
|
+
expect(@config.show_fields["title_display"]).to_not be_nil
|
218
|
+
expect(@config.show_fields["title_display"].label).to eq "Title"
|
221
219
|
end
|
222
220
|
it "takes block form" do
|
223
221
|
@config.add_show_field("title_display") do |f|
|
224
222
|
f.label = "Title"
|
225
223
|
end
|
226
224
|
|
227
|
-
@config.show_fields["title_display"].
|
228
|
-
@config.show_fields["title_display"].label.
|
225
|
+
expect(@config.show_fields["title_display"]).to_not be_nil
|
226
|
+
expect(@config.show_fields["title_display"].label).to eq "Title"
|
229
227
|
end
|
230
228
|
|
231
229
|
it "creates default label humanized from field" do
|
232
230
|
@config.add_show_field("my_custom_field")
|
233
231
|
|
234
|
-
@config.show_fields["my_custom_field"].label.
|
232
|
+
expect(@config.show_fields["my_custom_field"].label).to eq "My Custom Field"
|
235
233
|
end
|
236
234
|
|
237
235
|
it "should raise on nil solr field name" do
|
238
|
-
|
236
|
+
expect { @config.add_show_field(nil) }.to raise_error ArgumentError
|
239
237
|
end
|
240
238
|
|
241
239
|
end
|
@@ -258,11 +256,11 @@ describe "Blacklight::Configuration" do
|
|
258
256
|
|
259
257
|
field = c.search_fields["my_search_type"]
|
260
258
|
|
261
|
-
field.
|
259
|
+
expect(field).to_not be_nil
|
262
260
|
|
263
261
|
|
264
|
-
field.solr_parameters.
|
265
|
-
field.solr_local_parameters.
|
262
|
+
expect(field.solr_parameters).to_not be_nil
|
263
|
+
expect(field.solr_local_parameters).to_not be_nil
|
266
264
|
|
267
265
|
|
268
266
|
end
|
@@ -277,9 +275,9 @@ describe "Blacklight::Configuration" do
|
|
277
275
|
|
278
276
|
f = c.search_fields["some_field"]
|
279
277
|
|
280
|
-
f.
|
281
|
-
f.solr_parameters.
|
282
|
-
f.solr_local_parameters.
|
278
|
+
expect(f).to_not be_nil
|
279
|
+
expect(f.solr_parameters).to_not be_nil
|
280
|
+
expect(f.solr_local_parameters).to_not be_nil
|
283
281
|
end
|
284
282
|
|
285
283
|
it "should accept SearchField object" do
|
@@ -289,17 +287,17 @@ describe "Blacklight::Configuration" do
|
|
289
287
|
|
290
288
|
c.add_search_field("foo", f)
|
291
289
|
|
292
|
-
c.search_fields["foo"].
|
290
|
+
expect(c.search_fields["foo"]).to_not be_nil
|
293
291
|
end
|
294
292
|
|
295
293
|
it "should raise on nil key" do
|
296
|
-
|
294
|
+
expect {@config.add_search_field(nil, :foo => "bar")}.to raise_error ArgumentError
|
297
295
|
end
|
298
296
|
|
299
297
|
it "creates default label from titleized field key" do
|
300
298
|
@config.add_search_field("author_name")
|
301
299
|
|
302
|
-
@config.search_fields["author_name"].label.
|
300
|
+
expect(@config.search_fields["author_name"].label).to eq "Author Name"
|
303
301
|
end
|
304
302
|
|
305
303
|
|
@@ -309,20 +307,20 @@ describe "Blacklight::Configuration" do
|
|
309
307
|
it "should take a hash" do
|
310
308
|
c = Blacklight::Configuration.new
|
311
309
|
c.add_sort_field(:key => "my_sort_key", :sort => "score desc")
|
312
|
-
c.sort_fields["my_sort_key"].
|
310
|
+
expect(c.sort_fields["my_sort_key"]).to_not be_nil
|
313
311
|
end
|
314
312
|
|
315
313
|
it "should take a two-arg form with a hash" do
|
316
314
|
@config.add_sort_field("score desc, pub_date_sort desc, title_sort asc", :label => "relevance")
|
317
315
|
|
318
316
|
|
319
|
-
@config.sort_fields.values.find{|f| f.label == "relevance"}.
|
317
|
+
expect(@config.sort_fields.values.find{|f| f.label == "relevance"}).to_not be_nil
|
320
318
|
end
|
321
319
|
|
322
320
|
it "should take a SortField object" do
|
323
321
|
@config.add_sort_field(Blacklight::Configuration::SortField.new(:label => "relevance", :sort => "score desc, pub_date_sort desc, title_sort asc"
|
324
322
|
))
|
325
|
-
@config.sort_fields.values.find{|f| f.label == "relevance"}.
|
323
|
+
expect(@config.sort_fields.values.find{|f| f.label == "relevance"}).to_not be_nil
|
326
324
|
end
|
327
325
|
|
328
326
|
it "should take block form" do
|
@@ -331,7 +329,7 @@ describe "Blacklight::Configuration" do
|
|
331
329
|
field.sort = "score desc, pub_date_sort desc, title_sort asc"
|
332
330
|
end
|
333
331
|
|
334
|
-
@config.sort_fields.values.find{|f| f.label == "relevance"}.
|
332
|
+
expect(@config.sort_fields.values.find{|f| f.label == "relevance"}).to_not be_nil
|
335
333
|
|
336
334
|
end
|
337
335
|
end
|
@@ -341,7 +339,7 @@ describe "Blacklight::Configuration" do
|
|
341
339
|
@config.add_search_field('search_field_1')
|
342
340
|
@config.add_search_field('search_field_2', :default => true)
|
343
341
|
|
344
|
-
@config.default_search_field.key.
|
342
|
+
expect(@config.default_search_field.key).to eq 'search_field_2'
|
345
343
|
end
|
346
344
|
end
|
347
345
|
|
@@ -1,7 +1,4 @@
|
|
1
|
-
|
2
|
-
# Spec tests for Paginator class found in lib/blacklight/solr/facet_paginator.rb
|
3
|
-
|
4
|
-
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
1
|
+
require 'spec_helper'
|
5
2
|
|
6
3
|
describe 'Blacklight::Solr::FacetPaginator' do
|
7
4
|
before(:all) do
|
@@ -18,14 +15,14 @@ describe 'Blacklight::Solr::FacetPaginator' do
|
|
18
15
|
@paginator = Blacklight::Solr::FacetPaginator.new(@seven_facet_values, :limit => 6)
|
19
16
|
end
|
20
17
|
it 'should have next' do
|
21
|
-
@paginator.
|
18
|
+
expect(@paginator).to have_next
|
22
19
|
end
|
23
20
|
|
24
21
|
end
|
25
22
|
it 'should not have next when there are fewer results' do
|
26
23
|
paginator = Blacklight::Solr::FacetPaginator.new(@six_facet_values, :offset => 0, :limit => @limit)
|
27
24
|
|
28
|
-
paginator.
|
25
|
+
expect(paginator).not_to have_next
|
29
26
|
end
|
30
27
|
context 'when offset is greater than 0' do
|
31
28
|
before(:each) do
|
@@ -34,45 +31,45 @@ describe 'Blacklight::Solr::FacetPaginator' do
|
|
34
31
|
end
|
35
32
|
|
36
33
|
it 'should have previous' do
|
37
|
-
@paginator.
|
34
|
+
expect(@paginator).to have_previous
|
38
35
|
end
|
39
36
|
|
40
37
|
end
|
41
38
|
it 'should not have previous when offset is 0' do
|
42
39
|
paginator = Blacklight::Solr::FacetPaginator.new(@seven_facet_values, :offset => 0, :limit => @limit)
|
43
40
|
|
44
|
-
paginator.
|
41
|
+
expect(paginator).not_to have_previous
|
45
42
|
end
|
46
43
|
it 'should know a manually set sort, and produce proper sort url' do
|
47
44
|
paginator = Blacklight::Solr::FacetPaginator.new(@seven_facet_values, :offset => 100, :limit => @limit, :sort => 'index')
|
48
45
|
|
49
|
-
paginator.sort.
|
46
|
+
expect(paginator.sort).to eq 'index'
|
50
47
|
|
51
48
|
click_params = paginator.params_for_resort_url('count', {})
|
52
49
|
|
53
|
-
click_params[ @sort_key ].
|
54
|
-
click_params[ @page_key ].
|
50
|
+
expect(click_params[ @sort_key ]).to eq 'count'
|
51
|
+
expect(click_params[ @page_key ]).to be_nil
|
55
52
|
end
|
56
53
|
it 'should limit items to limit, if limit is smaller than items.length' do
|
57
54
|
paginator = Blacklight::Solr::FacetPaginator.new(@seven_facet_values, :offset => 100, :limit => 6, :sort => 'index')
|
58
|
-
paginator.items.
|
55
|
+
expect(paginator.items).to have(6).items
|
59
56
|
end
|
60
57
|
it 'should return all items when limit is greater than items.length' do
|
61
58
|
paginator = Blacklight::Solr::FacetPaginator.new(@six_facet_values, :offset => 100, :limit => 6, :sort => 'index')
|
62
|
-
paginator.items.
|
59
|
+
expect(paginator.items).to have(6).items
|
63
60
|
end
|
64
61
|
describe "for a nil :limit" do
|
65
62
|
before(:all) do
|
66
63
|
@paginator = Blacklight::Solr::FacetPaginator.new(@seven_facet_values, :offset => 100, :limit => nil, :sort => 'index')
|
67
64
|
end
|
68
65
|
it 'should return all items' do
|
69
|
-
@paginator.items.
|
66
|
+
expect(@paginator.items).to eq @seven_facet_values
|
70
67
|
end
|
71
68
|
it 'should not has_next?' do
|
72
|
-
@paginator.
|
69
|
+
expect(@paginator).not_to have_next
|
73
70
|
end
|
74
71
|
it 'should not has_previous?' do
|
75
|
-
@paginator.
|
72
|
+
expect(@paginator).not_to have_previous
|
76
73
|
end
|
77
74
|
end
|
78
75
|
|