blacklight-access_controls 0.7.0.rc1 → 0.7.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ad6262064035e0af1ebfcae414a52f18073874ba0d4ef695fd01cf22e3ef2c06
4
- data.tar.gz: 2f4f590ed542157b3d0e09335cb66a9ac90132908494a3d797ca041fb037ecb4
3
+ metadata.gz: 1432718300b52451d466cc04768b4c9c0e96f6cd642618fe6634d7de19a98dc0
4
+ data.tar.gz: 8ecd44bb67934ca4e5e2eab5f97211fefef0c30b35b74896f96737e08ded9977
5
5
  SHA512:
6
- metadata.gz: bf9cd42d89e6315c6e8c65d46341f995e4d0d668a24fa62e98c06d5bcee80c45c49deb81a47a18625cae26574e3d0f6f0ee34b95278a6420a5b6f4b40b126a6a
7
- data.tar.gz: 11de766eb48a9d94ed7aa6c1b8483a7e78d7bb4166ebbba8cf549b1b4b66171e633e418e3482b29e46245acb7c47b5db634e3b1520c0e29583128ea23bde75c5
6
+ metadata.gz: '018a2d0bce5a6e1f41cce61631117535fa9fdddc80ea598d2ef16a1a76633ba9c70f1f5c075e4625cd924c22a1fe7233296d6e0437a3247f505ea2085c5116d3'
7
+ data.tar.gz: 2c4a64bb4342cf51bbbc6e1d8690bdbc713b1ce9b84ab978ac8fe0db16803b50a9e5c2b837591e950c246fc75fab4078fc68e9c208aebe9fe7fbd2943c9dd598
@@ -5,10 +5,12 @@ notifications:
5
5
  email: false
6
6
 
7
7
  rvm:
8
- - 2.3.1
8
+ - 2.5.1
9
9
 
10
10
  env:
11
- - "RAILS_VERSION=5.0.0.1"
11
+ - "BLACKLIGHT_VERSION=master RAILS_VERSION=5.2.1"
12
+ - "RAILS_VERSION=5.2.1"
13
+ - "RAILS_VERSION=5.1.6"
12
14
 
13
15
  global_env:
14
16
  - NOKOGIRI_USE_SYSTEM_LIBRARIES=true
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.7.0.rc1
1
+ 0.7.0
@@ -17,7 +17,7 @@ Gem::Specification.new do |gem|
17
17
 
18
18
  gem.required_ruby_version = '>= 2.1.0'
19
19
 
20
- gem.add_dependency 'blacklight', '~> 6.0'
20
+ gem.add_dependency 'blacklight', '> 6.0', '< 8'
21
21
  gem.add_dependency 'cancancan', '~> 1.8'
22
22
  gem.add_dependency 'deprecation', '~> 1.0'
23
23
 
@@ -18,7 +18,7 @@ module Blacklight
18
18
 
19
19
  # This will work for BL 6, but will need to move to SearchService in BL 7
20
20
  def search_builder
21
- Blacklight::AccessControls::SearchBuilder.new(self, current_ability)
21
+ Blacklight::AccessControls::SearchBuilder.new(self, ability: current_ability)
22
22
  end
23
23
  end
24
24
  end
@@ -13,12 +13,17 @@ module Blacklight::AccessControls
13
13
  doc
14
14
  end
15
15
 
16
+ # This is only valid for, and should only be used for blacklight 6
16
17
  def permissions_document_class
17
- SolrDocument
18
+ blacklight_config.document_model
18
19
  end
19
20
 
20
21
  protected
21
22
 
23
+ def blacklight_config
24
+ CatalogController.blacklight_config
25
+ end
26
+
22
27
  # a solr query method
23
28
  # retrieve a solr document, given the doc id
24
29
  # Modeled on Blacklight::SolrHelper.get_permissions_solr_response_for_doc_id
@@ -28,7 +33,11 @@ module Blacklight::AccessControls
28
33
  raise Blacklight::Exceptions::RecordNotFound, 'The application is trying to retrieve permissions without specifying an asset id' if id.nil?
29
34
  solr_opts = permissions_solr_doc_params(id).merge(extra_controller_params)
30
35
  response = Blacklight.default_index.connection.get('select', params: solr_opts)
31
- solr_response = Blacklight::Solr::Response.new(response, solr_opts, document_model: permissions_document_class)
36
+
37
+ # Passing :blacklight_config is required for Blacklight 7, :document_model is required for Blacklight 6
38
+ solr_response = Blacklight::Solr::Response.new(response, solr_opts,
39
+ blacklight_config: blacklight_config,
40
+ document_model: permissions_document_class)
32
41
 
33
42
  raise Blacklight::Exceptions::RecordNotFound, "The solr permissions search handler didn't return anything for id \"#{id}\"" if solr_response.docs.empty?
34
43
  solr_response.docs.first
@@ -0,0 +1,3 @@
1
+ if ENV['BLACKLIGHT_VERSION'] == 'master'
2
+ gem 'blacklight', github: 'projectblacklight/blacklight'
3
+ end
@@ -28,8 +28,9 @@ RSpec.describe Blacklight::AccessControls::SearchBuilder do
28
28
  let(:ability) { instance_double(Ability, user_groups: [], current_user: user) }
29
29
 
30
30
  it 'is called with debug' do
31
- expect(Rails.logger).to receive(:debug).with(/^Solr parameters/)
31
+ allow(Rails.logger).to receive(:debug)
32
32
  search_builder.send(:apply_gated_discovery, {})
33
+ expect(Rails.logger).to have_received(:debug).with(/^Solr parameters/)
33
34
  end
34
35
  end
35
36
 
@@ -1,10 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- describe Blacklight::AccessControls::Catalog do
3
+ RSpec.describe Blacklight::AccessControls::Catalog do
4
4
  let(:controller) { CatalogController.new }
5
5
 
6
6
  describe '#enforce_show_permissions' do
7
- subject { controller.send(:enforce_show_permissions) }
7
+ subject { controller.enforce_show_permissions }
8
8
 
9
9
  let(:params) { { id: doc.id } }
10
10
 
@@ -38,4 +38,16 @@ describe Blacklight::AccessControls::Catalog do
38
38
  end
39
39
  end
40
40
  end
41
+
42
+ describe '#search_builder' do
43
+ subject { controller.search_builder }
44
+
45
+ before do
46
+ allow(controller).to receive(:current_ability).and_return(instance_double(Ability))
47
+ end
48
+
49
+ it 'creates a search_builder' do
50
+ expect(subject).to be_kind_of Blacklight::AccessControls::SearchBuilder
51
+ end
52
+ end
41
53
  end
@@ -40,8 +40,9 @@ describe Blacklight::AccessControls::Enforcement do
40
40
  let(:ability) { instance_double(Ability, user_groups: [], current_user: user) }
41
41
 
42
42
  it 'is called with debug' do
43
- expect(Rails.logger).to receive(:debug).with(/^Solr parameters/)
43
+ allow(Rails.logger).to receive(:debug)
44
44
  controller.send(:apply_gated_discovery, {})
45
+ expect(Rails.logger).to have_received(:debug).with(/^Solr parameters/)
45
46
  end
46
47
  end
47
48
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: blacklight-access_controls
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0.rc1
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Beer
@@ -11,22 +11,28 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2018-01-12 00:00:00.000000000 Z
14
+ date: 2018-10-15 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: blacklight
18
18
  requirement: !ruby/object:Gem::Requirement
19
19
  requirements:
20
- - - "~>"
20
+ - - ">"
21
21
  - !ruby/object:Gem::Version
22
22
  version: '6.0'
23
+ - - "<"
24
+ - !ruby/object:Gem::Version
25
+ version: '8'
23
26
  type: :runtime
24
27
  prerelease: false
25
28
  version_requirements: !ruby/object:Gem::Requirement
26
29
  requirements:
27
- - - "~>"
30
+ - - ">"
28
31
  - !ruby/object:Gem::Version
29
32
  version: '6.0'
33
+ - - "<"
34
+ - !ruby/object:Gem::Version
35
+ version: '8'
30
36
  - !ruby/object:Gem::Dependency
31
37
  name: cancancan
32
38
  requirement: !ruby/object:Gem::Requirement
@@ -268,6 +274,7 @@ files:
268
274
  - spec/factories/user.rb
269
275
  - spec/spec_helper.rb
270
276
  - spec/support/solr_support.rb
277
+ - spec/test_app_templates/Gemfile.extra
271
278
  - spec/test_app_templates/blacklight.yml
272
279
  - spec/test_app_templates/lib/generators/test_app_generator.rb
273
280
  - spec/unit/ability_spec.rb
@@ -290,12 +297,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
290
297
  version: 2.1.0
291
298
  required_rubygems_version: !ruby/object:Gem::Requirement
292
299
  requirements:
293
- - - ">"
300
+ - - ">="
294
301
  - !ruby/object:Gem::Version
295
- version: 1.3.1
302
+ version: '0'
296
303
  requirements: []
297
304
  rubyforge_project:
298
- rubygems_version: 2.7.1
305
+ rubygems_version: 2.7.6
299
306
  signing_key:
300
307
  specification_version: 4
301
308
  summary: Access controls for blacklight-based applications
@@ -303,6 +310,7 @@ test_files:
303
310
  - spec/factories/user.rb
304
311
  - spec/spec_helper.rb
305
312
  - spec/support/solr_support.rb
313
+ - spec/test_app_templates/Gemfile.extra
306
314
  - spec/test_app_templates/blacklight.yml
307
315
  - spec/test_app_templates/lib/generators/test_app_generator.rb
308
316
  - spec/unit/ability_spec.rb