Revision 232144d0 test/ganeti.utils_unittest.py
b/test/ganeti.utils_unittest.py | ||
---|---|---|
39 | 39 |
import distutils.version |
40 | 40 |
import glob |
41 | 41 |
import md5 |
42 |
import errno |
|
42 | 43 |
|
43 | 44 |
import ganeti |
44 | 45 |
import testutils |
... | ... | |
1822 | 1823 |
"", "x"]) |
1823 | 1824 |
|
1824 | 1825 |
|
1826 |
class TestIgnoreSignals(unittest.TestCase): |
|
1827 |
"""Test the IgnoreSignals decorator""" |
|
1828 |
|
|
1829 |
@staticmethod |
|
1830 |
def _Raise(exception): |
|
1831 |
raise exception |
|
1832 |
|
|
1833 |
@staticmethod |
|
1834 |
def _Return(rval): |
|
1835 |
return rval |
|
1836 |
|
|
1837 |
def testIgnoreSignals(self): |
|
1838 |
sock_err_intr = socket.error(errno.EINTR, "Message") |
|
1839 |
sock_err_intr.errno = errno.EINTR |
|
1840 |
sock_err_inval = socket.error(errno.EINVAL, "Message") |
|
1841 |
sock_err_inval.errno = errno.EINVAL |
|
1842 |
|
|
1843 |
env_err_intr = EnvironmentError(errno.EINTR, "Message") |
|
1844 |
env_err_inval = EnvironmentError(errno.EINVAL, "Message") |
|
1845 |
|
|
1846 |
self.assertRaises(socket.error, self._Raise, sock_err_intr) |
|
1847 |
self.assertRaises(socket.error, self._Raise, sock_err_inval) |
|
1848 |
self.assertRaises(EnvironmentError, self._Raise, env_err_intr) |
|
1849 |
self.assertRaises(EnvironmentError, self._Raise, env_err_inval) |
|
1850 |
|
|
1851 |
self.assertEquals(utils.IgnoreSignals(self._Raise, sock_err_intr), None) |
|
1852 |
self.assertEquals(utils.IgnoreSignals(self._Raise, env_err_intr), None) |
|
1853 |
self.assertRaises(socket.error, utils.IgnoreSignals, self._Raise, |
|
1854 |
sock_err_inval) |
|
1855 |
self.assertRaises(EnvironmentError, utils.IgnoreSignals, self._Raise, |
|
1856 |
env_err_inval) |
|
1857 |
|
|
1858 |
self.assertEquals(utils.IgnoreSignals(self._Return, True), True) |
|
1859 |
self.assertEquals(utils.IgnoreSignals(self._Return, 33), 33) |
|
1860 |
|
|
1861 |
|
|
1825 | 1862 |
if __name__ == '__main__': |
1826 | 1863 |
testutils.GanetiTestProgram() |
Also available in: Unified diff