def self._contents_requires_parameters
_index_requires_parameters.
merge({
+ uuid: {
+ type: 'string', required: false, default: nil
+ },
include_linked: {
type: 'boolean', required: false, default: false
},
Collection,
Human, Specimen, Trait].each do |klass|
@objects = klass.readable_by(*@read_users)
+ if klass == Group
+ @objects = @objects.where('group_class = ?', 'project')
+ end
conds = []
cond_params = []
if opts[:owner_uuid]
def check_auto_admin
if User.where("uuid not like '%-000000000000000'").where(:is_admin => true).count == 0 and Rails.configuration.auto_admin_user
- if current_user.email == Rails.configuration.auto_admin_user
+ if self.email == Rails.configuration.auto_admin_user
self.is_admin = true
self.is_active = true
end
updated_at: 2014-04-21 15:37:48 -0400
name: A Subproject
description: "Test project belonging to active user's first test project"
- group_class: folder
+ group_class: project
future_project_viewing_group:
uuid: zzzzz-j7d0g-futrprojviewgrp
kinds = json_response['items'].collect { |i| i['kind'] }.uniq
expect_kinds = %w'arvados#group arvados#specimen arvados#pipelineTemplate arvados#job'
assert_equal expect_kinds, (expect_kinds & kinds)
+
+ json_response['items'].each do |i|
+ if i['kind'] == 'arvados#group'
+ assert(i['group_class'] == 'project',
+ "group#contents returned a non-project group")
+ end
+ end
end
test 'get group-owned objects' do
self._entries[a].invalidate()
def update(self):
- groups = self.api.groups().list().execute()
+ groups = self.api.groups().list(
+ filters=[['group_class','=','project']]).execute()
self.merge(groups['items'],
lambda i: i['uuid'],
lambda a, i: a.uuid == i['uuid'],