def setUp(self): self.args_1 = Args() self.os_name, self.os_version, self.os_id = platform.dist() self.key_1 = get_registry_key(self.args_1) self.handler_a = A() self.handler_d = D() self.installer = Installer() self.installer.register('localhost', 'n', 'system', self.os_name, [self.os_version], [(self.handler_d, 'python'), (self.handler_a, 'virtualenv')])
def setUp(self): self.args_1 = Args() self.args_2 = Args() self.args_2.host_ip = '192.168.2.1' self.args_2.python = 'anaconda' self.args_2.venv_name = 'test' self.os_name, self.os_version, self.os_id = platform.dist() self.key_1 = get_registry_key(self.args_1) self.key_2 = get_registry_key(self.args_2) self.handler_a = A() self.handler_b = B() self.handler_c = C() self.installer = Installer()
class TestInstaller(unittest.TestCase): def setUp(self): self.args_1 = Args() self.args_2 = Args() self.args_2.host_ip = '192.168.2.1' self.args_2.python = 'anaconda' self.args_2.venv_name = 'test' self.os_name, self.os_version, self.os_id = platform.dist() self.key_1 = get_registry_key(self.args_1) self.key_2 = get_registry_key(self.args_2) self.handler_a = A() self.handler_b = B() self.handler_c = C() self.installer = Installer() def test_register(self): self.installer.register('localhost', 'y', 'anaconda', self.os_name, [self.os_version, '25.3'], [(self.handler_a, 'python'), (self.handler_b, 'virtualenv')]) self.installer.register('localhost', 'n', 'system', self.os_name, [self.os_version], [(self.handler_c, 'python'), (self.handler_a, 'virtualenv')]) self.installer.register('remote', 'y', 'anaconda', self.os_name, self.os_version, [(self.handler_a, 'python'), (self.handler_b, 'python'), (self.handler_c, 'virtualenv')]) handlers = self.installer.registered_handler[self.key_1]['python'] assert(self.handler_c in handlers) assert(len(handlers) == 1) handlers = self.installer.registered_handler[self.key_2]['python'] assert(self.handler_a in handlers) assert(self.handler_b in handlers) assert(len(handlers) == 2) def test_install(self): self.installer.register('localhost', 'n', 'system', self.os_name, [self.os_version], [(self.handler_c, 'python'), (self.handler_a, 'virtualenv')]) self.installer.register('remote', 'y', 'anaconda', self.os_name, self.os_version, [(self.handler_a, 'python'), (self.handler_b, 'python'), (self.handler_c, 'virtualenv')]) self.installer.install('unregistered_key') self.assertFalse(self.handler_a.installed) self.assertFalse(self.handler_b.installed) self.assertFalse(self.handler_c.installed) self.installer.install(self.key_1) self.assertTrue(self.handler_a.installed) self.assertTrue(self.handler_c.installed) self.assertFalse(self.handler_b.installed) self.handler_a.installed = False self.handler_c.installed = False self.installer.install(self.key_2) self.assertTrue(self.handler_a.installed) self.assertTrue(self.handler_b.installed) self.assertTrue(self.handler_c.installed) def test_deinstall(self): pass def tearDown(self): pass
class TestTaskMixin(unittest.TestCase): def setUp(self): self.args_1 = Args() self.os_name, self.os_version, self.os_id = platform.dist() self.key_1 = get_registry_key(self.args_1) self.handler_a = A() self.handler_d = D() self.installer = Installer() self.installer.register('localhost', 'n', 'system', self.os_name, [self.os_version], [(self.handler_d, 'python'), (self.handler_a, 'virtualenv')]) def test_task_out(self): self.assertEqual('test\n', self.handler_d.task_out('test')) def test_clear(self): with open('fabric_tasks.txt', 'a') as file: file.write('a\nb\c') self.handler_d.task_file_name = 'fabric_tasks.txt' with open('fabric_tasks.txt', 'r') as file: self.assertNotEqual(file.readlines(), []) self.handler_d.clear() with open('fabric_tasks.txt', 'r') as file: self.assertEqual(file.readlines(), []) def test_finished(self): self.handler_d.finished_tasks = [self.handler_d.task_out('a'), ] self.assertTrue(self.handler_d.finished('a')) self.assertFalse(self.handler_d.finished('b')) def test_finish(self): self.handler_d.task_file_name = 'fabric_tasks.txt' self.handler_d.finish('d') with open('fabric_tasks.txt', 'r') as file: self.assertEqual(file.readlines(), ['d\n']) self.handler_d.finish('a') with open('fabric_tasks.txt', 'r') as file: self.assertEqual(file.readlines(), ['d\n', 'a\n']) def test_runtask(self): self.installer.install(self.key_1) with open('fabric_tasks.txt', 'r') as file: self.assertEqual(file.readlines(), ['D\n']) self.assertTrue(self.handler_a.installed) self.assertTrue(self.handler_d.installed) self.handler_a.installed = False self.handler_d.installed = False self.installer.install(self.key_1) with open('fabric_tasks.txt', 'r') as file: self.assertEqual(file.readlines(), ['D\n']) self.assertTrue(self.handler_a.installed) # false because step is mentioned in file and skipped self.assertFalse(self.handler_d.installed) def tearDown(self): try: os.remove('fabric_tasks.txt') except OSError: pass