diff --git a/tests/test_sync.py b/tests/test_sync.py index f60e5f0a..10bb75ec 100644 --- a/tests/test_sync.py +++ b/tests/test_sync.py @@ -3,7 +3,8 @@ from responses import matchers from jobrunner import config, queries, sync -from jobrunner.models import JobRequest +from jobrunner.lib.database import find_where +from jobrunner.models import Job, JobRequest from tests.factories import job_factory, metrics_factory @@ -152,3 +153,24 @@ def test_session_request_flags(db, responses): # if this works, our expected request was generated sync.api_get("path", params={"backend": "test"}) + + +def test_sync_empty_response(db, monkeypatch, requests_mock): + monkeypatch.setattr( + "jobrunner.config.JOB_SERVER_ENDPOINT", "http://testserver/api/v2/" + ) + requests_mock.get( + "http://testserver/api/v2/job-requests/?backend=expectations", + json={ + "results": [], + }, + ) + sync.sync() + + # verify we did not post back to job-server + assert requests_mock.last_request.text is None + assert requests_mock.last_request.method == "GET" + + # also that we did not create any jobs + jobs = find_where(Job) + assert jobs == []