Index: Lib/distutils/tests/support.py =================================================================== --- Lib/distutils/tests/support.py (révision 69634) +++ Lib/distutils/tests/support.py (copie de travail) @@ -42,6 +42,13 @@ self.tempdirs.append(d) return d + def write_file(self, directory, name, content): + """Writes a file in the given directory""" + f = open(os.path.join(directory, name), 'w') + try: + f.write(content) + finally: + f.close() class DummyCommand: """Class to store options for retrieval via set_undefined_options().""" Index: Lib/distutils/tests/test_bdist_rpm.py =================================================================== --- Lib/distutils/tests/test_bdist_rpm.py (révision 0) +++ Lib/distutils/tests/test_bdist_rpm.py (révision 0) @@ -0,0 +1,69 @@ +"""Tests for distutils.command.bdist_rpm.""" + +import unittest +import sys +import os +import tempfile +import shutil + +from distutils.core import Distribution +from distutils.command.bdist_rpm import bdist_rpm +from distutils.tests import support +from distutils.spawn import find_executable + +SETUP_PY = """\ +from distutils.core import setup +import foo + +setup(name='foo', version='0.1', py_modules=['foo'], + url='xxx', author='xxx', author_email='xxx') + +""" + +class BuildRpmTestCase(support.TempdirManager, unittest.TestCase): + + def setUp(self): + support.TempdirManager.setUp(self) + self.old_location = os.getcwd() + self.old_sys_argv = sys.argv[:] + + def tearDown(self): + os.chdir(self.old_location) + sys.argv = self.old_sys_argv[:] + support.TempdirManager.tearDown(self) + + def test_no_optimize_flag(self): + + # http://bugs.python.org/issue1533164 + # this test will run only if the rpm command is found + if find_executable('rpm') is None: + return + + # let's create a package that brakes bdist_rpm + tmp_dir = self.mkdtemp() + pkg_dir = os.path.join(tmp_dir, 'foo') + os.mkdir(pkg_dir) + self.write_file(pkg_dir, 'setup.py', SETUP_PY) + self.write_file(pkg_dir, 'foo.py', '#') + + dist = Distribution({'name': 'foo', 'version': '0.1', + 'py_modules': ['foo'], + 'url': 'xxx', 'author': 'xxx', + 'author_email': 'xxx'}) + #dist.package_dir = pkg_dir + dist.script_name = 'setup.py' + os.chdir(pkg_dir) + + sys.argv = ['setup.py'] + cmd = bdist_rpm(dist) + cmd.fix_python = True + + cmd.ensure_finalized() + + cmd.run() + +def test_suite(): + return unittest.makeSuite(BuildRpmTestCase) + +if __name__ == '__main__': + test_support.run_unittest(test_suite()) Modification de propriétés sur Lib/distutils/tests/test_bdist_rpm.py ___________________________________________________________________ Nom : svn:executable + * Nom : svn:keywords + Id Nom : svn:eol-style + native