micropython-lib/python-stdlib/shutil/test_shutil.py

57 wiersze
1.3 KiB
Python

"""
Don't use ``tempfile`` in these tests, as ``tempfile`` relies on ``shutil``.
"""
import os
import shutil
import unittest
class TestRmtree(unittest.TestCase):
def test_dir_dne(self):
with self.assertRaises(OSError):
os.stat("foo")
with self.assertRaises(OSError):
shutil.rmtree("foo")
def test_file(self):
fn = "foo"
with open(fn, "w"):
pass
with self.assertRaises(OSError):
shutil.rmtree(fn)
os.remove(fn)
def test_empty_dir(self):
with self.assertRaises(OSError):
# If this triggers, a previous test didn't clean up.
# bit of a chicken/egg situation with ``tempfile``
os.stat("foo")
os.mkdir("foo")
shutil.rmtree("foo")
with self.assertRaises(OSError):
os.stat("foo")
def test_dir(self):
with self.assertRaises(OSError):
# If this triggers, a previous test didn't clean up.
# bit of a chicken/egg situation with ``tempfile``
os.stat("foo")
os.mkdir("foo")
os.mkdir("foo/bar")
with open("foo/bar/baz1.txt", "w"):
pass
with open("foo/bar/baz2.txt", "w"):
pass
shutil.rmtree("foo")
with self.assertRaises(OSError):
os.stat("foo")