Merge branch 'master' into 5420-collection-checkbox-selections
[arvados.git] / services / api / test / unit / repository_test.rb
1 require 'test_helper'
2
3 class RepositoryTest < ActiveSupport::TestCase
4   test 'write permission allows changing modified_at' do
5     act_as_user users(:active) do
6       r = repositories(:foo)
7       modtime_was = r.modified_at
8       r.modified_at = Time.now
9       assert r.save
10       assert_operator modtime_was, :<, r.modified_at
11     end
12   end
13
14   test 'write permission not sufficient for changing name' do
15     act_as_user users(:active) do
16       r = repositories(:foo)
17       name_was = r.name
18       r.name = 'newname'
19       assert_raises ArvadosModel::PermissionDeniedError do
20         r.save!
21       end
22       r.reload
23       assert_equal name_was, r.name
24     end
25   end
26
27   test 'write permission necessary for changing modified_at' do
28     act_as_user users(:spectator) do
29       r = repositories(:foo)
30       modtime_was = r.modified_at
31       r.modified_at = Time.now
32       assert_raises ArvadosModel::PermissionDeniedError do
33         r.save!
34       end
35       r.reload
36       assert_equal modtime_was, r.modified_at
37     end
38   end
39 end