blacklight-access_controls 0.7.0.rc1 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
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