Revision c0f6d0d8 test/ganeti.jqueue_unittest.py
b/test/ganeti.jqueue_unittest.py | ||
---|---|---|
43 | 43 |
class _FakeJob: |
44 | 44 |
def __init__(self, job_id, status): |
45 | 45 |
self.id = job_id |
46 |
self.writable = False |
|
46 | 47 |
self._status = status |
47 | 48 |
self._log = [] |
48 | 49 |
|
... | ... | |
279 | 280 |
class TestQueuedJob(unittest.TestCase): |
280 | 281 |
def test(self): |
281 | 282 |
self.assertRaises(errors.GenericError, jqueue._QueuedJob, |
282 |
None, 1, []) |
|
283 |
None, 1, [], False)
|
|
283 | 284 |
|
284 | 285 |
def testDefaults(self): |
285 | 286 |
job_id = 4260 |
... | ... | |
289 | 290 |
] |
290 | 291 |
|
291 | 292 |
def _Check(job): |
293 |
self.assertTrue(job.writable) |
|
292 | 294 |
self.assertEqual(job.id, job_id) |
293 | 295 |
self.assertEqual(job.log_serial, 0) |
294 | 296 |
self.assert_(job.received_timestamp) |
... | ... | |
305 | 307 |
self.assertEqual(job.GetInfo(["summary"]), |
306 | 308 |
[[op.input.Summary() for op in job.ops]]) |
307 | 309 |
|
308 |
job1 = jqueue._QueuedJob(None, job_id, ops) |
|
310 |
job1 = jqueue._QueuedJob(None, job_id, ops, True)
|
|
309 | 311 |
_Check(job1) |
310 |
job2 = jqueue._QueuedJob.Restore(None, job1.Serialize()) |
|
312 |
job2 = jqueue._QueuedJob.Restore(None, job1.Serialize(), True)
|
|
311 | 313 |
_Check(job2) |
312 | 314 |
self.assertEqual(job1.Serialize(), job2.Serialize()) |
313 | 315 |
|
316 |
def testWritable(self): |
|
317 |
job = jqueue._QueuedJob(None, 1, [opcodes.OpTestDelay()], False) |
|
318 |
self.assertFalse(job.writable) |
|
319 |
|
|
320 |
job = jqueue._QueuedJob(None, 1, [opcodes.OpTestDelay()], True) |
|
321 |
self.assertTrue(job.writable) |
|
322 |
|
|
314 | 323 |
def testPriority(self): |
315 | 324 |
job_id = 4283 |
316 | 325 |
ops = [ |
... | ... | |
323 | 332 |
self.assertEqual(job.CalcStatus(), constants.JOB_STATUS_QUEUED) |
324 | 333 |
self.assert_(repr(job).startswith("<")) |
325 | 334 |
|
326 |
job = jqueue._QueuedJob(None, job_id, ops) |
|
335 |
job = jqueue._QueuedJob(None, job_id, ops, True)
|
|
327 | 336 |
_Check(job) |
328 | 337 |
self.assert_(compat.all(op.priority == constants.OP_PRIO_DEFAULT |
329 | 338 |
for op in job.ops)) |
... | ... | |
409 | 418 |
|
410 | 419 |
def _NewJob(): |
411 | 420 |
job = jqueue._QueuedJob(None, 1, |
412 |
[opcodes.OpTestDelay() for _ in range(10)]) |
|
421 |
[opcodes.OpTestDelay() for _ in range(10)], |
|
422 |
True) |
|
413 | 423 |
self.assertEqual(job.CalcStatus(), constants.JOB_STATUS_QUEUED) |
414 | 424 |
self.assert_(compat.all(op.status == constants.OP_STATUS_QUEUED |
415 | 425 |
for op in job.ops)) |
... | ... | |
550 | 560 |
|
551 | 561 |
class _JobProcessorTestUtils: |
552 | 562 |
def _CreateJob(self, queue, job_id, ops): |
553 |
job = jqueue._QueuedJob(queue, job_id, ops) |
|
563 |
job = jqueue._QueuedJob(queue, job_id, ops, True)
|
|
554 | 564 |
self.assertFalse(job.start_timestamp) |
555 | 565 |
self.assertFalse(job.end_timestamp) |
556 | 566 |
self.assertEqual(len(ops), len(job.ops)) |
... | ... | |
972 | 982 |
self.assert_(job.ops_iter) |
973 | 983 |
|
974 | 984 |
# Serialize and restore (simulates program restart) |
975 |
newjob = jqueue._QueuedJob.Restore(queue, job.Serialize()) |
|
985 |
newjob = jqueue._QueuedJob.Restore(queue, job.Serialize(), True)
|
|
976 | 986 |
self.assertFalse(newjob.ops_iter) |
977 | 987 |
self._TestPartial(newjob, successcount) |
978 | 988 |
|
... | ... | |
1016 | 1026 |
self.assertRaises(IndexError, queue.GetNextUpdate) |
1017 | 1027 |
|
1018 | 1028 |
# ... also after being restored |
1019 |
job2 = jqueue._QueuedJob.Restore(queue, job.Serialize()) |
|
1029 |
job2 = jqueue._QueuedJob.Restore(queue, job.Serialize(), True)
|
|
1020 | 1030 |
# Calling the processor on a finished job should be a no-op |
1021 | 1031 |
self.assertTrue(jqueue._JobProcessor(queue, opexec, job2)()) |
1022 | 1032 |
self.assertRaises(IndexError, queue.GetNextUpdate) |
... | ... | |
1117 | 1127 |
self._CheckLogMessages(job, logmsgcount) |
1118 | 1128 |
|
1119 | 1129 |
# Serialize and restore (simulates program restart) |
1120 |
newjob = jqueue._QueuedJob.Restore(queue, job.Serialize()) |
|
1130 |
newjob = jqueue._QueuedJob.Restore(queue, job.Serialize(), True)
|
|
1121 | 1131 |
self._CheckLogMessages(newjob, logmsgcount) |
1122 | 1132 |
|
1123 | 1133 |
# Check each message |
Also available in: Unified diff