Source code for virttest.utils_libguestfs_unittest

#!/usr/bin/python
import unittest
import logging

import common
from autotest.client import os_dep
import utils_libguestfs as lgf


[docs]class LibguestfsTest(unittest.TestCase):
[docs] def test_lgf_cmd_check(self): cmds = ['virt-ls', 'virt-cat'] for cmd in cmds: try: os_dep.command(cmd) self.assertTrue(lgf.lgf_cmd_check(cmd)) except ValueError: logging.warning("Command %s not installed, skipping " "unittest...", cmd)
[docs] def test_lgf_cmd_check_raises(self): cmds = ['virt-test-fail', ''] for cmd in cmds: self.assertRaises(lgf.LibguestfsCmdError, lgf.lgf_cmd_check, cmd)
[docs] def test_lgf_cmd(self): cmd = "libguestfs-test-tool" try: os_dep.command(cmd) self.assertEqual(lgf.lgf_command(cmd).exit_status, 0) except ValueError: logging.warning("Command %s not installed, skipping unittest...", cmd)
[docs]class SlotsCheckTest(unittest.TestCase):
[docs] def test_LibguestfsBase_default_slots(self): """Default slots' value check""" lfb = lgf.LibguestfsBase() self.assertEqual(lfb.ignore_status, True) self.assertEqual(lfb.debug, False) self.assertEqual(lfb.timeout, 60) self.assertEqual(lfb.uri, None) self.assertEqual(lfb.lgf_exec, "/bin/true")
[docs] def test_LibguestfsBase_update_slots(self): """Update slots""" lfb = lgf.LibguestfsBase() lfb.set_ignore_status(False) self.assertEqual(lfb.ignore_status, False) lfb.set_debug(True) self.assertEqual(lfb.debug, True) lfb.set_timeout(240) self.assertEqual(lfb.timeout, 240)
[docs] def test_Guestfish_slots(self): """Test Guestfish slots""" try: gf = lgf.Guestfish() self.assertEqual(gf.lgf_exec, "guestfish") gf = lgf.Guestfish( disk_img="test.img", ro_mode=True, inspector=True) self.assertEqual(gf.lgf_exec, "guestfish -a 'test.img' --ro -i") gf = lgf.Guestfish(libvirt_domain="test", inspector=True, uri="qemu+ssh://root@EXAMPLE/system") gf_cmd = "guestfish -c 'qemu+ssh://root@EXAMPLE/system' -d 'test' -i" self.assertEqual(gf.lgf_exec, gf_cmd) except lgf.LibguestfsCmdError: logging.warning("Command guestfish not present, skipping " "unittest...")
if __name__ == "__main__": unittest.main()