X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/82d7893e9b0816896885b3486b5e388002ec8bcb..5ea0a240eb08a4d43d5f7670a694f0158f0bac36:/services/api/test/integration/jobs_api_test.rb diff --git a/services/api/test/integration/jobs_api_test.rb b/services/api/test/integration/jobs_api_test.rb index 4499a92cdf..f5fb920b46 100644 --- a/services/api/test/integration/jobs_api_test.rb +++ b/services/api/test/integration/jobs_api_test.rb @@ -49,4 +49,43 @@ class JobsApiTest < ActionDispatch::IntegrationTest last_qsequence = qsequence end end + + test 'get_delete components_get again for job with components' do + authorize_with :active + get "/arvados/v1/jobs/#{jobs(:running_job_with_components).uuid}", + headers: auth(:active) + assert_response 200 + assert_not_nil json_response["components"] + assert_equal ["component1", "component2"], json_response["components"].keys + + # delete second component + put "/arvados/v1/jobs/#{jobs(:running_job_with_components).uuid}", params: { + job: { + components: {"component1" => "zzzzz-8i9sb-jobuuid00000001"} + }, + limit: 1000 + }, headers: auth(:active) + assert_response 200 + + get "/arvados/v1/jobs/#{jobs(:running_job_with_components).uuid}", + headers: auth(:active) + assert_response 200 + assert_not_nil json_response["components"] + assert_equal ["component1"], json_response["components"].keys + + # delete all components + put "/arvados/v1/jobs/#{jobs(:running_job_with_components).uuid}", params: { + job: { + components: nil + }, + limit: 1000 + }, headers: auth(:active) + assert_response 200 + + get "/arvados/v1/jobs/#{jobs(:running_job_with_components).uuid}", + headers: auth(:active) + assert_response 200 + assert_not_nil json_response["components"] + assert_equal [], json_response["components"].keys + end end