X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/d7b51d23da327117fd94ad32d6be791cf50cbc11..bdc87ddb113a2e05dd859a7f68f5fe1135bbc650:/services/api/test/functional/arvados/v1/jobs_controller_test.rb diff --git a/services/api/test/functional/arvados/v1/jobs_controller_test.rb b/services/api/test/functional/arvados/v1/jobs_controller_test.rb index 91f867a15c..a8a4f85b5f 100644 --- a/services/api/test/functional/arvados/v1/jobs_controller_test.rb +++ b/services/api/test/functional/arvados/v1/jobs_controller_test.rb @@ -1,12 +1,16 @@ require 'test_helper' +load 'test/functional/arvados/v1/git_setup.rb' class Arvados::V1::JobsControllerTest < ActionController::TestCase + include GitSetup + test "submit a job" do authorize_with :active post :create, job: { script: "hash", script_version: "master", + repository: "foo", script_parameters: {} } assert_response :success @@ -14,6 +18,8 @@ class Arvados::V1::JobsControllerTest < ActionController::TestCase new_job = JSON.parse(@response.body) assert_not_nil new_job['uuid'] assert_not_nil new_job['script_version'].match(/^[0-9a-f]{40}$/) + # Default: not persistent + assert_equal false, new_job['output_is_persistent'] end test "normalize output and log uuids when creating job" do @@ -22,6 +28,7 @@ class Arvados::V1::JobsControllerTest < ActionController::TestCase script: "hash", script_version: "master", script_parameters: {}, + repository: "foo", started_at: Time.now, finished_at: Time.now, running: false, @@ -170,6 +177,55 @@ class Arvados::V1::JobsControllerTest < ActionController::TestCase 'zzzzz-8i9sb-pshmckwoma9plh7'] end + test "search jobs by started_at with < query" do + authorize_with :active + get :index, { + filters: [['started_at', '<', Time.now.to_s]] + } + assert_response :success + found = assigns(:objects).collect(&:uuid) + assert_equal true, !!found.index('zzzzz-8i9sb-pshmckwoma9plh7') + end + + test "search jobs by started_at with > query" do + authorize_with :active + get :index, { + filters: [['started_at', '>', Time.now.to_s]] + } + assert_response :success + assert_equal 0, assigns(:objects).count + end + + test "search jobs by started_at with >= query on metric date" do + authorize_with :active + get :index, { + filters: [['started_at', '>=', '2014-01-01']] + } + assert_response :success + found = assigns(:objects).collect(&:uuid) + assert_equal true, !!found.index('zzzzz-8i9sb-pshmckwoma9plh7') + end + + test "search jobs by started_at with >= query on metric date and time" do + authorize_with :active + get :index, { + filters: [['started_at', '>=', '2014-01-01 01:23:45']] + } + assert_response :success + found = assigns(:objects).collect(&:uuid) + assert_equal true, !!found.index('zzzzz-8i9sb-pshmckwoma9plh7') + end + + test "search jobs with 'any' operator" do + authorize_with :active + get :index, { + where: { any: ['contains', 'pshmckw'] } + } + assert_response :success + found = assigns(:objects).collect(&:uuid) + assert_equal true, !!found.index('zzzzz-8i9sb-pshmckwoma9plh7') + end + test "search jobs by nonexistent column with < query" do authorize_with :active get :index, { @@ -177,4 +233,6 @@ class Arvados::V1::JobsControllerTest < ActionController::TestCase } assert_response 422 end + + end