X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/efcfd2cdc9a9ed6ab3af54e9a4e149d4bdf1f8d3..72e22b49ec2721d3a1369da768d3d74fa9c079c3:/services/api/test/functional/arvados/v1/groups_controller_test.rb diff --git a/services/api/test/functional/arvados/v1/groups_controller_test.rb b/services/api/test/functional/arvados/v1/groups_controller_test.rb index e82113e625..3beec35958 100644 --- a/services/api/test/functional/arvados/v1/groups_controller_test.rb +++ b/services/api/test/functional/arvados/v1/groups_controller_test.rb @@ -478,16 +478,49 @@ class Arvados::V1::GroupsControllerTest < ActionController::TestCase :<, json_response['items_available']) end - test 'get contents recursive=true' do + test 'get contents, recursive=true' do + authorize_with :active + params = { + id: groups(:aproject).uuid, + recursive: true, + format: :json, + } + get :contents, params + owners = json_response['items'].map do |item| + item['owner_uuid'] + end + assert_includes(owners, groups(:aproject).uuid) + assert_includes(owners, groups(:asubproject).uuid) + end + + [false, nil].each do |recursive| + test "get contents, recursive=#{recursive.inspect}" do + authorize_with :active + params = { + id: groups(:aproject).uuid, + format: :json, + } + params[:recursive] = false if recursive == false + get :contents, params + owners = json_response['items'].map do |item| + item['owner_uuid'] + end + assert_includes(owners, groups(:aproject).uuid) + refute_includes(owners, groups(:asubproject).uuid) + end + end + + test 'get home project contents, recursive=true' do authorize_with :active get :contents, { - id: groups(:aproject).uuid, + id: users(:active).uuid, recursive: true, format: :json, } owners = json_response['items'].map do |item| item['owner_uuid'] end + assert_includes(owners, users(:active).uuid) assert_includes(owners, groups(:aproject).uuid) assert_includes(owners, groups(:asubproject).uuid) end