def test_state_retrylimit(tmpdir): request = Request(0, 1, script='exit 75', path=str(tmpdir)) request.save() with open(os.path.join(request.path, 'attempt'), 'w') as f: print(Request.MAX_TRIES, file=f) request.execute() assert request.state == Request.RETRYLIMIT
def test_state_should_tolerate_empty_exitcode_file(tmpdir): request = Request(0, 1, path=str(tmpdir)) request.save() with open(str(tmpdir / 'exitcode'), 'w') as f: print('', file=f) assert request.exitcode is None assert request.state == Request.PENDING
def test_applicable_postpone(tmpdir): request = Request(0, 1, script='true', applicable='exit 69', path=str(tmpdir)) request.save() request.execute() assert request.state == Request.POSTPONE
def test_applicable_error(tmpdir): request = Request(0, 1, script='true', applicable='exit 2', path=str(tmpdir)) request.save() request.execute() assert request.state == Request.ERROR assert request.exitcode == 2
def test_not_applicable_but_success(tmpdir): request = Request(0, 1, script='true', applicable='exit 1', path=str(tmpdir)) request.save() request.execute() assert request.state == Request.SUCCESS assert request.exitcode == 0
def test_state_pending(tmpdir): with freezegun.freeze_time('2011-07-05 08:37:00', tz_offset=0): request = Request(0, 1, path=str(tmpdir), starttime=datetime.datetime(2011, 7, 5, 8, 38, tzinfo=pytz.utc)) request.save() assert request.state == Request.PENDING
def test_execute_should_just_record_time_if_no_script(tmpdir): with freezegun.freeze_time('2011-07-27 07:35:00', tz_offset=0): request = Request(0, 1, path=str(tmpdir)) request.save() request.execute() assert request.state == Request.SUCCESS assert request.started == datetime.datetime(2011, 7, 27, 7, 35, tzinfo=pytz.utc) assert request.stopped == datetime.datetime(2011, 7, 27, 7, 35, tzinfo=pytz.utc)
def test_exitcode_should_read_last_line(tmpdir): request = Request(0, 1, path=str(tmpdir)) request.save() with open(str(tmpdir / 'exitcode'), 'w') as f: print('0\n2', file=f) assert request.exitcode == 2
def test_save(tmpdir): r = Request(19, 980, path=str(tmpdir / '19')) r.save() assert os.path.exists(str(tmpdir / '19/data')) is True
def test_state_error(tmpdir): request = Request(0, 1, script='exit 1', path=str(tmpdir)) request.save() request.execute() assert request.state == Request.ERROR
def test_state_tempfail(tmpdir): request = Request(0, 1, script='exit 75', path=str(tmpdir)) request.save() request.execute() assert request.state == Request.TEMPFAIL
def test_state_success(tmpdir): request = Request(0, 1, script='exit 0', path=str(tmpdir)) request.save() request.execute() assert request.state == Request.SUCCESS
def test_state_running(tmpdir): request = Request(0, 1, path=str(tmpdir)) request.save() with open(str(tmpdir / 'started'), 'w') as f: print(gocept.net.utils.now(), file=f) assert request.state == Request.RUNNING