Sha256: 357836766d135e91cb78d93e1b58c00afc340c561e20d76a54fe68b917d3f3ed

Contents?: true

Size: 787 Bytes

Versions: 31

Compression:

Stored size: 787 Bytes

Contents

module Ddr::Auth
  RSpec.describe EffectivePermissions do

    let(:resource) { FactoryGirl.build(:item) }
    let(:policy) { Collection.new(id: "coll-1") }
    let(:agents) { [ "Editors", "bob@example.com" ] }
    
    before do
      resource.admin_policy = policy
      resource.roles.grant FactoryGirl.build(:role, :downloader, :public)
      policy.roles.grant role_type: "Editor", agent: "Editors", scope: "policy"
    end

    it "should return the list of permissions granted to the agents on the resource in resource scope, plus the permissions granted to the agents on the resource's policy in policy scope" do
      expect(described_class.call(resource, agents))
        .to contain_exactly(:read, :download, :add_children, :update, :replace, :arrange)
    end
    
  end
end

Version data entries

31 entries across 31 versions & 1 rubygems

Version Path
ddr-models-3.0.8 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.7 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.6 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.5 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.4 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.3 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.2 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.1 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.0 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.0.rc6 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.0.rc5 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.0.rc4 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.0.rc3 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.0.rc2 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.0.rc1 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.0.beta.22 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.0.beta.21 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.0.beta.20 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.0.beta.18 spec/auth/effective_permissions_spec.rb
ddr-models-3.0.0.beta.17 spec/auth/effective_permissions_spec.rb