def test_delete_locked_file(self): """Unit test for delete_locked_file""" tests = ('regular', 'unicode-emdash-u\u2014', 'long' + 'x' * 100) for test in tests: f = tempfile.NamedTemporaryFile( prefix='bleachbit-delete-locked-file', suffix=test, delete=False) pathname = f.name f.close() import time time.sleep(5) # avoid race condition self.assertExists(pathname) logger.debug('delete_locked_file(%s) ' % pathname) if not shell.IsUserAnAdmin(): with self.assertRaises(WindowsError): delete_locked_file(pathname) else: try: delete_locked_file(pathname) except WindowsError: logger.exception( 'delete_locked_file() threw an error, which may be a false positive' ) self.assertExists(pathname) logger.info('reboot Windows and check the three files are deleted')
def test_update_url(self): """Check connection to the update URL""" from bleachbit.Update import build_opener opener = build_opener() opener.addheaders = [('accept', 'text/*')] import urllib try: handle = opener.open(bleachbit.update_check_url) except urllib.error.HTTPError as e: logger.exception('HTTP error, url: %s\nheaders:\n%s', bleachbit.update_check_url, e.headers) raise e doc = handle.read() import xml xml.dom.minidom.parseString(doc)
def test_getrealuid(self): """Test for getrealuid()""" if 'posix' != os.name: self.assertRaises(RuntimeError, getrealuid) return uid = getrealuid() self.assertIsInstance(uid, int) self.assertTrue(0 <= uid <= 65535) if sudo_mode(): self.assertGreater(uid, 0) logger.debug("os.getenv('LOGNAME') = %s", os.getenv('LOGNAME')) logger.debug("os.getenv('SUDO_UID') = %s", os.getenv('SUDO_UID')) logger.debug('os.geteuid() = %d', os.geteuid()) logger.debug('os.getuid() = %d', os.getuid()) try: logger.debug('os.login() = %s', os.getlogin()) except: logger.exception('os.login() raised exception')
def test_delete_locked_file(self): """Unit test for delete_locked_file""" tests = ('regular', u'unicode-emdash-u\u2014', 'long' + 'x' * 100) for test in tests: f = tempfile.NamedTemporaryFile( prefix='bleachbit-delete-locked-file', suffix=test, delete=False) pathname = f.name f.close() import time time.sleep(5) # avoid race condition self.assertExists(pathname) logger.debug('delete_locked_file(%s) ' % pathname) if not shell.IsUserAnAdmin(): with self.assertRaises(WindowsError): delete_locked_file(pathname) else: try: delete_locked_file(pathname) except WindowsError: logger.exception('delete_locked_file() threw an error, which may be a false positive') self.assertExists(pathname) logger.info('reboot Windows and check the three files are deleted')