def test_add_two_jobs_then_remove_them(job_queue): job1 = Job(123411) job2 = Job(56722) job_queue.add_job(job1) job_queue.add_job(job2) assert job_queue.get_num_unassigned_jobs() == 2 first_returned_job = job_queue.get_job() second_returned_job = job_queue.get_job() assert first_returned_job.job_id == job1.job_id assert second_returned_job.job_id == job2.job_id assert job_queue.get_num_unassigned_jobs() == 0
def test_multiple_jobs_move_to_assigned(job_manager, job1, user1, user2): job_manager.add_job(job1) job_manager.add_job(Job(2)) job_manager.request_job(user1) job_manager.request_job(user2) assert job_manager.num_assigned() == 2 assert job_manager.num_unassigned() == 0
def test_one_job_added_is_returned_by_get(job_queue): job = Job(1234) assert job_queue.get_num_unassigned_jobs() == 0 job_queue.add_job(job) assert job_queue.get_num_unassigned_jobs() == 1 returned_job = job_queue.get_job() assert returned_job.job_id == 1234 assert job_queue.get_num_unassigned_jobs() == 0
def make_second_job(): return Job(2)
def make_first_job(): return Job(1)
def test_unassign_job_with_invalid_user(in_progress): assert in_progress.get_num_assigned_jobs() == 0 in_progress.assign(Job(1), User(100).user_id) invalid_user = User(20) with pytest.raises(job_queue_errors.UnassignInvalidDataException): in_progress.unassign(invalid_user.user_id)
def test_when_job_unassigned_it_returned_from_assigned_jobs(in_progress): in_progress.assign(Job('job01'), User(100).user_id) assert in_progress.get_num_assigned_jobs() == 1 returned_job = in_progress.unassign(User(100).user_id) assert returned_job.job_id == 'job01' assert in_progress.get_num_assigned_jobs() == 0
def test_when_job_unassigned_it_is_removed_from_assigned_jobs(in_progress): in_progress.assign(Job(1), User(100).user_id) assert in_progress.get_num_assigned_jobs() == 1 in_progress.unassign(User(100).user_id) assert in_progress.get_num_assigned_jobs() == 0
def test_when_job_assigned_it_is_added_to_assigned_jobs(in_progress): in_progress.assign(Job(1), User(100).user_id) assert in_progress.get_num_assigned_jobs() == 1
def make_first_job(): return Job(job_id=1)