spec/unit/rights_metadata_spec.rb in hydra-access-controls-6.4.2 vs spec/unit/rights_metadata_spec.rb in hydra-access-controls-6.5.0.rc2
- old
+ new
@@ -4,53 +4,53 @@
subject { ModsAsset.new }
it "should have a set of permissions" do
subject.discover_groups=['group1', 'group2']
subject.edit_users=['user1']
subject.read_users=['user2', 'user3']
- subject.permissions.should include({:type=>"group", :access=>"discover", :name=>"group1"},
- {:type=>"group", :access=>"discover", :name=>"group2"},
- {:type=>"user", :access=>"read", :name=>"user2"},
- {:type=>"user", :access=>"read", :name=>"user3"},
- {:type=>"user", :access=>"edit", :name=>"user1"})
+ subject.permissions.should include(Hydra::AccessControls::Permission.new({:type=>"group", :access=>"discover", :name=>"group1"}),
+ Hydra::AccessControls::Permission.new({:type=>"group", :access=>"discover", :name=>"group2"}),
+ Hydra::AccessControls::Permission.new({:type=>"user", :access=>"read", :name=>"user2"}),
+ Hydra::AccessControls::Permission.new({:type=>"user", :access=>"read", :name=>"user3"}),
+ Hydra::AccessControls::Permission.new({:type=>"user", :access=>"edit", :name=>"user1"}))
end
describe "updating permissions" do
it "should create new group permissions" do
- subject.permissions = [{:name=>'group1', :access=>'discover', :type=>'group'}]
- subject.permissions.should == [{:type=>'group', :access=>'discover', :name=>'group1'}]
+ subject.permissions_attributes = [{:name=>'group1', :access=>'discover', :type=>'group'}]
+ subject.permissions.should == [Hydra::AccessControls::Permission.new({:type=>'group', :access=>'discover', :name=>'group1'})]
end
it "should create new user permissions" do
- subject.permissions = [{:name=>'user1', :access=>'discover', :type=>'user'}]
- subject.permissions.should == [{:type=>'user', :access=>'discover', :name=>'user1'}]
+ subject.permissions_attributes = [{:name=>'user1', :access=>'discover', :type=>'user'}]
+ subject.permissions.should == [Hydra::AccessControls::Permission.new({:type=>'user', :access=>'discover', :name=>'user1'})]
end
it "should not replace existing groups" do
- subject.permissions = [{:name=>'group1', :access=>'discover', :type=>'group'}]
- subject.permissions = [{:name=>'group2', :access=>'discover', :type=>'group'}]
- subject.permissions.should == [{:type=>'group', :access=>'discover', :name=>'group1'},
- {:type=>'group', :access=>'discover', :name=>'group2'}]
+ subject.permissions_attributes = [{:name=>'group1', :access=>'discover', :type=>'group'}]
+ subject.permissions_attributes = [{:name=>'group2', :access=>'discover', :type=>'group'}]
+ subject.permissions.should == [Hydra::AccessControls::Permission.new({:type=>'group', :access=>'discover', :name=>'group1'}),
+ Hydra::AccessControls::Permission.new({:type=>'group', :access=>'discover', :name=>'group2'})]
end
it "should not replace existing users" do
- subject.permissions = [{:name=>'user1', :access=>'discover', :type=>'user'}]
- subject.permissions = [{:name=>'user2', :access=>'discover', :type=>'user'}]
- subject.permissions.should == [{:type=>'user', :access=>'discover', :name=>'user1'},
- {:type=>'user', :access=>'discover', :name=>'user2'}]
+ subject.permissions_attributes = [{:name=>'user1', :access=>'discover', :type=>'user'}]
+ subject.permissions_attributes = [{:name=>'user2', :access=>'discover', :type=>'user'}]
+ subject.permissions.should == [Hydra::AccessControls::Permission.new({:type=>'user', :access=>'discover', :name=>'user1'}),
+ Hydra::AccessControls::Permission.new({:type=>'user', :access=>'discover', :name=>'user2'})]
end
it "should update permissions on existing users" do
- subject.permissions = [{:name=>'user1', :access=>'discover', :type=>'user'}]
- subject.permissions = [{:name=>'user1', :access=>'edit', :type=>'user'}]
- subject.permissions.should == [{:type=>'user', :access=>'edit', :name=>'user1'}]
+ subject.permissions_attributes = [{:name=>'user1', :access=>'discover', :type=>'user'}]
+ subject.permissions_attributes = [{:name=>'user1', :access=>'edit', :type=>'user'}]
+ subject.permissions.should == [Hydra::AccessControls::Permission.new({:type=>'user', :access=>'edit', :name=>'user1'})]
end
it "should update permissions on existing groups" do
- subject.permissions = [{:name=>'group1', :access=>'discover', :type=>'group'}]
- subject.permissions = [{:name=>'group1', :access=>'edit', :type=>'group'}]
- subject.permissions.should == [{:type=>'group', :access=>'edit', :name=>'group1'}]
+ subject.permissions_attributes = [{:name=>'group1', :access=>'discover', :type=>'group'}]
+ subject.permissions_attributes = [{:name=>'group1', :access=>'edit', :type=>'group'}]
+ subject.permissions.should == [Hydra::AccessControls::Permission.new({:type=>'group', :access=>'edit', :name=>'group1'})]
end
it "should assign user permissions when :type == 'person'" do
- subject.permissions = [{:name=>'user1', :access=>'discover', :type=>'person'}]
- subject.permissions.should == [{:type=>'user', :access=>'discover', :name=>'user1'}]
+ subject.permissions_attributes = [{:name=>'user1', :access=>'discover', :type=>'person'}]
+ subject.permissions.should == [Hydra::AccessControls::Permission.new({:type=>'user', :access=>'discover', :name=>'user1'})]
end
it "should raise an ArgumentError when the :type hashkey is invalid" do
- expect{subject.permissions = [{:name=>'user1', :access=>'read', :type=>'foo'}]}.to raise_error(ArgumentError)
+ expect{subject.permissions_attributes = [{:name=>'user1', :access=>'read', :type=>'foo'}]}.to raise_error(ArgumentError)
end
end
context "to_solr" do
let(:embargo_release_date) { "2010-12-01" }