def setUp(self): User = get_user_model() user = User.objects.create_user('tester', '*****@*****.**', 'tester') self.controller = Controller(name='Test App', marathon_cmd='ping', owner=user) self.controller.save() setup_responses_for_log_tests(self.controller) self.general_im = GeneralInfrastructureManager() self.controller_im = self.controller.infra_manager
def setUp(self): User = get_user_model() user = User.objects.create_user( 'tester', '*****@*****.**', 'tester') self.controller = Controller( name='Test App', marathon_cmd='ping', owner=user) self.controller.save() setup_responses_for_log_tests(self.controller) self.general_im = GeneralInfrastructureManager() self.controller_im = self.controller.infra_manager
class GeneralInfrastructureManagerTest(TestCase): def setUp(self): User = get_user_model() user = User.objects.create_user( 'tester', '*****@*****.**', 'tester') self.controller = Controller( name='Test App', marathon_cmd='ping', owner=user) self.controller.save() setup_responses_for_log_tests(self.controller) self.general_im = GeneralInfrastructureManager() self.controller_im = self.controller.infra_manager @responses.activate def test_get_marathon_app(self): app = self.general_im.get_marathon_app(self.controller.app_id) self.assertEqual(app['id'], '/%s' % (self.controller.app_id,)) @responses.activate def test_get_marathon_app_tasks(self): [task] = self.general_im.get_marathon_app_tasks(self.controller.app_id) self.assertEqual(task['appId'], '/%s' % (self.controller.app_id,)) self.assertEqual( task['id'], '%s.the-task-id' % (self.controller.app_id,)) self.assertEqual(task['ports'], [8898]) self.assertEqual(task['host'], 'worker-machine-1') @responses.activate def test_get_marathon_info(self): info = self.general_im.get_marathon_info() self.assertEqual(info['name'], 'marathon') self.assertEqual(info['frameworkId'], 'the-framework-id') @responses.activate def test_get_worker_info(self): worker = self.general_im.get_worker_info('worker-machine-1') self.assertEqual(worker['id'], 'worker-machine-id') @responses.activate def test_get_app_log_info(self): [info] = self.general_im.get_app_log_info(self.controller.app_id) self.assertEqual( info, { 'task_host': 'worker-machine-1', 'task_id': '%s.the-task-id' % (self.controller.app_id,), 'task_dir': ( 'worker-machine-id/frameworks/the-framework-id' '/executors/%s.the-task-id/runs/latest') % ( self.controller.app_id,), } ) @responses.activate def test_get_task_log_info(self): info = self.general_im.get_task_log_info( self.controller.app_id, '%s.the-task-id' % (self.controller.app_id,), 'worker-machine-1') self.assertEqual( info, { 'task_host': 'worker-machine-1', 'task_id': '%s.the-task-id' % (self.controller.app_id,), 'task_dir': ( 'worker-machine-id/frameworks/the-framework-id' '/executors/%s.the-task-id/runs/latest') % ( self.controller.app_id,), } ) @responses.activate def test_controller_infra_manager_get_marathon_app(self): app = self.controller_im.get_controller_marathon_app() self.assertEqual(app['id'], '/%s' % (self.controller.app_id,)) @responses.activate def test_controller_infra_manager_get_controller_log_info(self): [info] = self.controller_im.get_controller_log_info() self.assertEqual( info, { 'task_host': 'worker-machine-1', 'task_id': '%s.the-task-id' % (self.controller.app_id,), 'task_dir': ( 'worker-machine-id/frameworks/the-framework-id' '/executors/%s.the-task-id/runs/latest') % ( self.controller.app_id,), } ) @responses.activate def test_controller_infra_manager_get_controller_task_log_info(self): info = self.controller_im.get_controller_task_log_info( '%s.the-task-id' % (self.controller.app_id,)) self.assertEqual( info, { 'task_host': 'worker-machine-1', 'task_id': '%s.the-task-id' % (self.controller.app_id,), 'task_dir': ( 'worker-machine-id/frameworks/the-framework-id' '/executors/%s.the-task-id/runs/latest') % ( self.controller.app_id,), } ) @responses.activate def test_controller_infra_manager_get_controller_non_existent(self): self.assertRaises( InfrastructureError, self.controller_im.get_controller_task_log_info, 'non-existing-task-id')
class GeneralInfrastructureManagerTest(TestCase): def setUp(self): User = get_user_model() user = User.objects.create_user('tester', '*****@*****.**', 'tester') self.controller = Controller(name='Test App', marathon_cmd='ping', owner=user) self.controller.save() setup_responses_for_log_tests(self.controller) self.general_im = GeneralInfrastructureManager() self.controller_im = self.controller.infra_manager @responses.activate def test_get_marathon_app(self): app = self.general_im.get_marathon_app(self.controller.app_id) self.assertEqual(app['id'], '/%s' % (self.controller.app_id, )) @responses.activate def test_get_marathon_app_tasks(self): [task] = self.general_im.get_marathon_app_tasks(self.controller.app_id) self.assertEqual(task['appId'], '/%s' % (self.controller.app_id, )) self.assertEqual(task['id'], '%s.the-task-id' % (self.controller.app_id, )) self.assertEqual(task['ports'], [8898]) self.assertEqual(task['host'], 'worker-machine-1') @responses.activate def test_get_marathon_info(self): info = self.general_im.get_marathon_info() self.assertEqual(info['name'], 'marathon') self.assertEqual(info['frameworkId'], 'the-framework-id') @responses.activate def test_get_worker_info(self): worker = self.general_im.get_worker_info('worker-machine-1') self.assertEqual(worker['id'], 'worker-machine-id') @responses.activate def test_get_app_log_info(self): [info] = self.general_im.get_app_log_info(self.controller.app_id) self.assertEqual( info, { 'task_host': 'worker-machine-1', 'task_id': '%s.the-task-id' % (self.controller.app_id, ), 'task_dir': ('worker-machine-id/frameworks/the-framework-id' '/executors/%s.the-task-id/runs/latest') % (self.controller.app_id, ), }) @responses.activate def test_get_task_log_info(self): info = self.general_im.get_task_log_info( self.controller.app_id, '%s.the-task-id' % (self.controller.app_id, ), 'worker-machine-1') self.assertEqual( info, { 'task_host': 'worker-machine-1', 'task_id': '%s.the-task-id' % (self.controller.app_id, ), 'task_dir': ('worker-machine-id/frameworks/the-framework-id' '/executors/%s.the-task-id/runs/latest') % (self.controller.app_id, ), }) @responses.activate def test_controller_infra_manager_get_marathon_app(self): app = self.controller_im.get_controller_marathon_app() self.assertEqual(app['id'], '/%s' % (self.controller.app_id, )) @responses.activate def test_controller_infra_manager_get_controller_log_info(self): [info] = self.controller_im.get_controller_log_info() self.assertEqual( info, { 'task_host': 'worker-machine-1', 'task_id': '%s.the-task-id' % (self.controller.app_id, ), 'task_dir': ('worker-machine-id/frameworks/the-framework-id' '/executors/%s.the-task-id/runs/latest') % (self.controller.app_id, ), }) @responses.activate def test_controller_infra_manager_get_controller_task_log_info(self): info = self.controller_im.get_controller_task_log_info( '%s.the-task-id' % (self.controller.app_id, )) self.assertEqual( info, { 'task_host': 'worker-machine-1', 'task_id': '%s.the-task-id' % (self.controller.app_id, ), 'task_dir': ('worker-machine-id/frameworks/the-framework-id' '/executors/%s.the-task-id/runs/latest') % (self.controller.app_id, ), }) @responses.activate def test_controller_infra_manager_get_controller_non_existent(self): self.assertRaises(InfrastructureError, self.controller_im.get_controller_task_log_info, 'non-existing-task-id')