def test_existing(self): f = TempFilepath(ext="txt") f2 = TempFilepath(f.basename, dir=f.basedir) self.assertEqual(f, f2) f3 = TempFilepath(f.basename, dir=f.directory) self.assertEqual(f, f3)
def test_existing_init(self): relpath = "/foo1/bar1/test.txt" s = "happy" f = TempFilepath(relpath) f.write_text(s) f2 = TempFilepath(f) self.assertEqual(f, f2)
def test_has(self): f = TempFilepath(data="foo bar che") self.assertTrue(f.has()) self.assertTrue(f.has("bar")) self.assertTrue(lambda line: "bar" in line) f = TempFilepath() self.assertFalse(f.has())
def test_inferrence(self): dp = TempDirpath() p = Path(dp.path) self.assertTrue(isinstance(p, p.dir_class())) fp = TempFilepath() p = Path(fp) self.assertTrue(isinstance(p, p.file_class())) fp = "/some/non/existant/random/path.ext" p = Path(fp) self.assertTrue(isinstance(p, p.file_class())) pp = "/some/non/existant/path" p = Path(pp) self.assertTrue(isinstance(p, p.path_class())) fp = "/some/non/existant/random/path.ext" p = Path(fp, path_class=p.path_class()) self.assertTrue(isinstance(p, p.path_class()))
def test_get_basename(self): n = TempFilepath.get_basename(ext="csv", prefix="bar", suffix="che") self.assertRegex(n, r"bar\w+che\.csv") n = TempFilepath.get_basename(ext="csv", prefix="bar", name="") self.assertRegex(n, r"bar\w+\.csv") n = TempFilepath.get_basename(ext="csv", name="") self.assertRegex(n, r"\w+\.csv") n = TempFilepath.get_basename(ext="py", name="foo") self.assertEqual("foo.py", n) n = TempFilepath.get_basename(ext="py", name="foo.py") self.assertEqual("foo.py", n) n = TempFilepath.get_basename(ext="py", prefix="bar", name="foo.py") self.assertEqual("barfoo.py", n) n = TempFilepath.get_basename() self.assertTrue(n) n = TempFilepath.get_basename(ext="ext") self.assertRegex(n, r"\w+\.ext")
def test_new(self): f = TempFilepath([""], ext="csv") self.assertFalse(f.endswith("/.csv")) self.assertTrue(f.startswith(TempFilepath.gettempdir())) f = TempFilepath(["/"], ext="csv") self.assertFalse(f.endswith("/.csv")) f = TempFilepath([], ext="csv") self.assertFalse(f.endswith("/.csv")) f = TempFilepath("/", ext="csv") self.assertFalse(f.endswith("/.csv")) f = TempFilepath("", ext="csv") self.assertFalse(f.endswith("/.csv")) f = TempFilepath() self.assertTrue(f.exists()) self.assertTrue(f.is_file()) f = TempFilepath("foo", "bar") self.assertTrue(f.exists()) self.assertTrue(f.is_file()) self.assertTrue("/foo/bar" in f)
def test_relparts(self): f = TempFilepath("foo", "bar", "che.txt") self.assertEqual(["foo", "bar", "che.txt"], f.relparts)
def test_relpath(self): f = TempFilepath("foo", "bar", "che.txt") self.assertEqual("foo/bar/che.txt", f.relpath)
def test_dir_param(self): f = TempFilepath() f2 = TempFilepath(dir=f.directory) self.assertEqual(f.directory, f2.directory)