virt.virt_test_utils: run_autotest - 'tar' needs relative paths to strip the leading '/'
[autotest-zwu.git] / client / virt / installer_unittest.py
blob7b0c750c5434f0fecca09710d5971f1b67ab1368
1 #!/usr/bin/python
3 import unittest
4 import common
5 from autotest_lib.client.virt import installer
6 from autotest_lib.client.common_lib import cartesian_config
8 class installer_test(unittest.TestCase):
10 def setUp(self):
11 self.registry = installer.InstallerRegistry()
14 def test_register_get_installer(self):
15 install_mode = 'custom_install_mode'
16 virt_type = 'custom_virt_type'
18 class CustomVirtInstaller:
19 pass
21 self.registry.register(install_mode, CustomVirtInstaller, virt_type)
22 klass = self.registry.get_installer(install_mode, virt_type)
23 self.assertIs(klass, CustomVirtInstaller)
26 def test_register_get_installer_default(self):
27 install_mode = 'base_install_mode'
29 class BaseVirtInstaller:
30 pass
32 self.registry.register(install_mode, BaseVirtInstaller)
33 klass = self.registry.get_installer(install_mode,
34 get_default_virt=True)
35 self.assertIs(klass, BaseVirtInstaller)
37 klass = self.registry.get_installer(install_mode,
38 virt=None,
39 get_default_virt=True)
40 self.assertIs(klass, BaseVirtInstaller)
43 def test_make_installer(self):
44 config = """install_mode = test_install_mode
45 vm_type = test"""
47 class Installer:
48 def __init__(self, test, params):
49 pass
51 installer.INSTALLER_REGISTRY.register('test_install_mode',
52 Installer,
53 'test')
55 config_parser = cartesian_config.Parser()
56 config_parser.parse_string(config)
57 params = config_parser.get_dicts().next()
59 instance = installer.make_installer(params)
60 self.assertIsInstance(instance, Installer)
63 if __name__ == '__main__':
64 unittest.main()