Merge branch '3448-keep-put-timestamps'
[arvados.git] / services / api / test / unit / permission_test.rb
index 7a6e4825ff2948b2c3d6a2d5b6892deb8cf52cbb..1ea1419147686e5117e0f5d2b794777f350854d7 100644 (file)
@@ -132,26 +132,34 @@ class PermissionTest < ActiveSupport::TestCase
     end
   end
 
-  test "user cannot use owner_uuid without write permission on new owner" do
+  test "cannot create with owner = unwritable user" do
     set_user_from_auth :rominiadmin
-
     assert_raises ArvadosModel::PermissionDeniedError, "created with owner = unwritable user" do
       Specimen.create!(owner_uuid: users(:active).uuid)
     end
+  end
 
+  test "cannot change owner to unwritable user" do
+    set_user_from_auth :rominiadmin
     ob = Specimen.create!
     assert_raises ArvadosModel::PermissionDeniedError, "changed owner to unwritable user" do
       ob.update_attributes!(owner_uuid: users(:active).uuid)
     end
+  end
 
+  test "cannot create with owner = unwritable group" do
+    set_user_from_auth :rominiadmin
     assert_raises ArvadosModel::PermissionDeniedError, "created with owner = unwritable group" do
       Specimen.create!(owner_uuid: groups(:aproject).uuid)
     end
+  end
 
+  test "cannot change owner to unwritable group" do
+    set_user_from_auth :rominiadmin
     ob = Specimen.create!
     assert_raises ArvadosModel::PermissionDeniedError, "changed owner to unwritable group" do
       ob.update_attributes!(owner_uuid: groups(:aproject).uuid)
     end
-
   end
+
 end