micropython-lib/python-stdlib/tempfile/test_tempfile.py

51 wiersze
1.3 KiB
Python

import os
import tempfile
import unittest
class Base(unittest.TestCase):
def assertExists(self, fn):
os.stat(fn)
def assertNotExists(self, fn):
with self.assertRaises(OSError):
os.stat(fn)
class TestMkdtemp(Base):
def test_no_args(self):
fn = tempfile.mkdtemp()
self.assertTrue(fn.startswith("/tmp"))
self.assertExists(fn)
os.rmdir(fn)
def test_prefix(self):
fn = tempfile.mkdtemp(prefix="foo")
self.assertTrue(fn.startswith("/tmp"))
self.assertTrue("foo" in fn)
self.assertFalse(fn.endswith("foo"))
self.assertExists(fn)
os.rmdir(fn)
def test_suffix(self):
fn = tempfile.mkdtemp(suffix="foo")
self.assertTrue(fn.startswith("/tmp"))
self.assertTrue(fn.endswith("foo"))
self.assertExists(fn)
os.rmdir(fn)
def test_dir(self):
fn = tempfile.mkdtemp(dir="tmp_micropython")
self.assertTrue(fn.startswith("tmp_micropython"))
self.assertExists(fn)
os.rmdir(fn)
class TestTemporaryDirectory(Base):
def test_context_manager_no_args(self):
with tempfile.TemporaryDirectory() as fn:
self.assertTrue(isinstance(fn, str))
self.assertTrue(fn.startswith("/tmp"))
self.assertExists(fn)
self.assertNotExists(fn)