#!/usr/bin/env python """\ SkippedTestDemo.py Demo usage for skipped tests in unittest.py Copyright (C) 2004 Remy Blank """ import unittest import os class ReadShadowTest(unittest.TestCase): """Read access to /etc/shadow""" def testReadingAsRoot(self): """Reading /etc/shadow as root""" self.skipIf(os.geteuid() != 0, "Must be root") open("/etc/shadow").close() def testReadingAsUser(self): """Reading /etc/shadow as non-root""" isRoot = os.geteuid() == 0 if isRoot: # Can run this test even as root os.seteuid(500) self.assertRaises(IOError, open, "/etc/shadow") if isRoot: os.seteuid(0) class BootFileTest(unittest.TestCase): """Boot file access""" def setUp(self): super(BootFileTest, self).setUp() self.skipIf(os.name != "nt", "Only available on Windows") def testConfigSys(self): """Access to config.sys""" open("c:\\config.sys").close() def testAutoexecBat(self): """Access to autoexec.bat""" open("c:\\autoexec.bat").close() if __name__ == "__main__": unittest.main()