12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- """Tests for distutils.command.clean."""
- import os
- import unittest
- from distutils.command.clean import clean
- from distutils.tests import support
- from test.support import run_unittest
- class cleanTestCase(support.TempdirManager,
- support.LoggingSilencer,
- unittest.TestCase):
- def test_simple_run(self):
- pkg_dir, dist = self.create_dist()
- cmd = clean(dist)
- # let's add some elements clean should remove
- dirs = [(d, os.path.join(pkg_dir, d))
- for d in ('build_temp', 'build_lib', 'bdist_base',
- 'build_scripts', 'build_base')]
- for name, path in dirs:
- os.mkdir(path)
- setattr(cmd, name, path)
- if name == 'build_base':
- continue
- for f in ('one', 'two', 'three'):
- self.write_file(os.path.join(path, f))
- # let's run the command
- cmd.all = 1
- cmd.ensure_finalized()
- cmd.run()
- # make sure the files where removed
- for name, path in dirs:
- self.assertFalse(os.path.exists(path),
- '%s was not removed' % path)
- # let's run the command again (should spit warnings but succeed)
- cmd.all = 1
- cmd.ensure_finalized()
- cmd.run()
- def test_suite():
- return unittest.makeSuite(cleanTestCase)
- if __name__ == "__main__":
- run_unittest(test_suite())
|