46 lines
1.2 KiB
Python
46 lines
1.2 KiB
Python
|
"""Tests for distutils.command.clean."""
|
||
|
|
||
|
import os
|
||
|
from distutils.command.clean import clean
|
||
|
from distutils.tests import support
|
||
|
|
||
|
|
||
|
class TestClean(support.TempdirManager):
|
||
|
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:
|
||
|
assert not os.path.exists(path), f'{path} was not removed'
|
||
|
|
||
|
# let's run the command again (should spit warnings but succeed)
|
||
|
cmd.all = 1
|
||
|
cmd.ensure_finalized()
|
||
|
cmd.run()
|