end
login_perm_props = {identity_url_prefix: openid_prefix}
- # check if only to probe the given user parameter
- just_probe = (params[:just_probe] == 'true') ? true : false;
-
@object = model_class.new resource_attrs
# If user_param is passed, lookup for user. If exists, skip create and only create any missing links.
end
end
- # if just probing, return any object found
- if just_probe
- show
- return
- end
-
# create if need be, and then create or update the links as needed
if need_to_create
if @object.save
with this OpenID prefix *and* a matching email address in order to \
claim the account.
eos
- opt :n, 'Do not change anything, just probe'
end
log.level = (ENV['DEBUG'] || opts.debug) ? Logger::DEBUG : Logger::WARN
arv = Arvados.new(api_version: 'v1')
begin
- new_user = arv.user.create(user_param: user_arg, repo_name: user_repo_name, vm_uuid: vm_uuid, openid_prefix: opts.openid_prefix, just_probe: opts.n, user: {})
+ new_user = arv.user.create(user_param: user_arg, repo_name: user_repo_name, vm_uuid: vm_uuid, openid_prefix: opts.openid_prefix, user: {})
log.warn new_user
rescue Exception => e #Arvados::TransactionFailedError
log.warn e.message
assert_nil response_object['first_name'], 'expecting no first name since it will be reset when user_param is used'
end
- test "create user with valid email user_param, vm and repo as input with opt.n" do
- authorize_with :admin
-
- post :create, {
- user_param: 'abc@xyz.com',
- repo_name: 'test_repo',
- vm_uuid: 'no_such_vm',
- just_probe: 'true',
- user: {}
- }
-
- assert_response :success
- response_object = JSON.parse(@response.body)
- assert_nil response_object['uuid'], 'expected null uuid since no object created due to just probe'
- end
-
test "create user twice with user param and check links are not recreated" do
authorize_with :admin