From 078467ee96bdc74cc385810a24eeae2a2318be46 Mon Sep 17 00:00:00 2001 From: George Goldberg Date: Mon, 2 Oct 2017 14:15:51 +0100 Subject: PLT-7759: Make GetNewestJobByStatusAndType not fail when no jobs match. (#7540) --- store/sqlstore/job_store.go | 4 ++-- store/sqlstore/job_store_test.go | 4 ++++ 2 files changed, 6 insertions(+), 2 deletions(-) (limited to 'store/sqlstore') diff --git a/store/sqlstore/job_store.go b/store/sqlstore/job_store.go index 0ae5a6a07..8cd921217 100644 --- a/store/sqlstore/job_store.go +++ b/store/sqlstore/job_store.go @@ -344,8 +344,8 @@ func (jss SqlJobStore) GetNewestJobByStatusAndType(status string, jobType string Type = :Type ORDER BY CreateAt DESC - LIMIT 1`, map[string]interface{}{"Status": status, "Type": jobType}); err != nil { - result.Err = model.NewAppError("SqlJobStore.GetAllByStatus", "store.sql_job.get_newest_job_by_status_and_type.app_error", nil, "Status="+status+", "+err.Error(), http.StatusInternalServerError) + LIMIT 1`, map[string]interface{}{"Status": status, "Type": jobType}); err != nil && err != sql.ErrNoRows { + result.Err = model.NewAppError("SqlJobStore.GetNewestJobByStatusAndType", "store.sql_job.get_newest_job_by_status_and_type.app_error", nil, "Status="+status+", "+err.Error(), http.StatusInternalServerError) } else { result.Data = job } diff --git a/store/sqlstore/job_store_test.go b/store/sqlstore/job_store_test.go index 148d8b92d..38686c4e5 100644 --- a/store/sqlstore/job_store_test.go +++ b/store/sqlstore/job_store_test.go @@ -275,6 +275,10 @@ func TestJobStoreGetNewestJobByStatusAndType(t *testing.T) { result := <-ss.Job().GetNewestJobByStatusAndType(status1, jobType1) assert.Nil(t, result.Err) assert.EqualValues(t, jobs[0].Id, result.Data.(*model.Job).Id) + + result = <-ss.Job().GetNewestJobByStatusAndType(model.NewId(), model.NewId()) + assert.Nil(t, result.Err) + assert.Nil(t, result.Data.(*model.Job)) } func TestJobStoreGetCountByStatusAndType(t *testing.T) { -- cgit v1.2.3-1-g7c22