Staging
v0.5.1
v0.5.1
https://github.com/python/cpython
Tip revision: a58a626092151ed73e2e0382ff63bd0c7dca4a14 authored by Benjamin Peterson on 07 March 2009, 16:34:40 UTC
bump version to 3.1a1
bump version to 3.1a1
Tip revision: a58a626
support.py
"""Support code for distutils test cases."""
import os
import shutil
import tempfile
from distutils import log
class LoggingSilencer(object):
def setUp(self):
super().setUp()
self.threshold = log.set_threshold(log.FATAL)
def tearDown(self):
log.set_threshold(self.threshold)
super().tearDown()
class TempdirManager(object):
"""Mix-in class that handles temporary directories for test cases.
This is intended to be used with unittest.TestCase.
"""
def setUp(self):
super().setUp()
self.tempdirs = []
def tearDown(self):
super().tearDown()
while self.tempdirs:
d = self.tempdirs.pop()
shutil.rmtree(d, os.name in ('nt', 'cygwin'))
def mkdtemp(self):
"""Create a temporary directory that will be cleaned up.
Returns the path of the directory.
"""
d = tempfile.mkdtemp()
self.tempdirs.append(d)
return d
def write_file(self, path, content):
"""Writes a file in the given path.
path can be a string or a sequence.
"""
if isinstance(path, (list, tuple)):
path = os.path.join(*path)
f = open(path, 'w')
try:
f.write(content)
finally:
f.close()
class DummyCommand:
"""Class to store options for retrieval via set_undefined_options()."""
def __init__(self, **kwargs):
for kw, val in kwargs.items():
setattr(self, kw, val)
def ensure_finalized(self):
pass