def test_get_host_queue_entries_and_special_tasks(self): self._setup_special_tasks() host = self.hosts[0].id entries_and_tasks = ( rpc_interface.get_host_queue_entries_and_special_tasks(host)) paths = [entry['execution_path'] for entry in entries_and_tasks] self.assertEquals(paths, [ 'hosts/host1/3-verify', '2-autotest_system/host1', 'hosts/host1/2-verify', '1-autotest_system/host1', 'hosts/host1/1-verify' ]) verify2 = entries_and_tasks[2] self._common_entry_check(verify2) self.assertEquals(verify2['type'], 'Verify') self.assertEquals(verify2['status'], 'Running') self.assertEquals(verify2['execution_path'], 'hosts/host1/2-verify') entry2 = entries_and_tasks[1] self._common_entry_check(entry2) self.assertEquals(entry2['type'], 'Job') self.assertEquals(entry2['status'], 'Queued') self.assertEquals(entry2['started_on'], '2009-01-03 00:00:00')
def test_get_host_queue_entries_and_special_tasks(self): host = self.hosts[0] job1 = self._create_job(hosts=[1]) job2 = self._create_job(hosts=[1]) entry1 = job1.hostqueueentry_set.all()[0] entry1.update_object(started_on=datetime.datetime(2009, 1, 2), execution_subdir='1-myuser/host1') entry2 = job2.hostqueueentry_set.all()[0] entry2.update_object(started_on=datetime.datetime(2009, 1, 3), execution_subdir='2-myuser/host1') task1 = models.SpecialTask.objects.create( host=host, task=models.SpecialTask.Task.VERIFY, time_started=datetime.datetime(2009, 1, 1), # ran before job 1 is_complete=True) task2 = models.SpecialTask.objects.create( host=host, task=models.SpecialTask.Task.VERIFY, queue_entry=entry2, # ran with job 2 is_active=True) task3 = models.SpecialTask.objects.create( host=host, task=models.SpecialTask.Task.VERIFY) # not yet run entries_and_tasks = ( rpc_interface.get_host_queue_entries_and_special_tasks('host1')) paths = [entry['execution_path'] for entry in entries_and_tasks] self.assertEquals(paths, ['hosts/host1/3-verify', '2-myuser/host1', 'hosts/host1/2-verify', '1-myuser/host1', 'hosts/host1/1-verify']) verify2 = entries_and_tasks[2] self._common_entry_check(verify2) self.assertEquals(verify2['type'], 'Verify') self.assertEquals(verify2['status'], 'Running') self.assertEquals(verify2['execution_path'], 'hosts/host1/2-verify') entry2 = entries_and_tasks[1] self._common_entry_check(entry2) self.assertEquals(entry2['type'], 'Job') self.assertEquals(entry2['status'], 'Queued') self.assertEquals(entry2['started_on'], '2009-01-03 00:00:00')
def test_view_invalid_host(self): # RPCs used by View Host page should work for invalid hosts self._create_job_helper(hosts=[1]) self.hosts[0].delete() self.assertEquals(1, rpc_interface.get_num_hosts(hostname='host1', valid_only=False)) data = rpc_interface.get_hosts(hostname='host1', valid_only=False) self.assertEquals(1, len(data)) self.assertEquals(1, rpc_interface.get_num_host_queue_entries( host__hostname='host1')) data = rpc_interface.get_host_queue_entries(host__hostname='host1') self.assertEquals(1, len(data)) count = rpc_interface.get_num_host_queue_entries_and_special_tasks( hostname='host1') self.assertEquals(1, count) data = rpc_interface.get_host_queue_entries_and_special_tasks( hostname='host1') self.assertEquals(1, len(data))
def test_view_invalid_host(self): # RPCs used by View Host page should work for invalid hosts self._create_job_helper(hosts=[1]) self.hosts[0].delete() self.assertEquals( 1, rpc_interface.get_num_hosts(hostname='host1', valid_only=False)) data = rpc_interface.get_hosts(hostname='host1', valid_only=False) self.assertEquals(1, len(data)) self.assertEquals( 1, rpc_interface.get_num_host_queue_entries(host__hostname='host1')) data = rpc_interface.get_host_queue_entries(host__hostname='host1') self.assertEquals(1, len(data)) count = rpc_interface.get_num_host_queue_entries_and_special_tasks( hostname='host1') self.assertEquals(1, count) data = rpc_interface.get_host_queue_entries_and_special_tasks( hostname='host1') self.assertEquals(1, len(data))
def test_get_host_queue_entries_and_special_tasks(self): self._setup_special_tasks() entries_and_tasks = ( rpc_interface.get_host_queue_entries_and_special_tasks('host1')) paths = [entry['execution_path'] for entry in entries_and_tasks] self.assertEquals(paths, ['hosts/host1/3-verify', '2-myuser/host1', 'hosts/host1/2-verify', '1-myuser/host1', 'hosts/host1/1-verify']) verify2 = entries_and_tasks[2] self._common_entry_check(verify2) self.assertEquals(verify2['type'], 'Verify') self.assertEquals(verify2['status'], 'Running') self.assertEquals(verify2['execution_path'], 'hosts/host1/2-verify') entry2 = entries_and_tasks[1] self._common_entry_check(entry2) self.assertEquals(entry2['type'], 'Job') self.assertEquals(entry2['status'], 'Queued') self.assertEquals(entry2['started_on'], '2009-01-03 00:00:00')