Ejemplo n.º 1
0
 def test_heritage(self):
     self.assertEqual(
         list(RelativePath("a", "b", "c", "d").heritage()),
         [
             RelativePath("a"),
             RelativePath("a", "b"),
             RelativePath("a", "b", "c"),
             RelativePath("a", "b", "c", "d"),
         ],
     )
Ejemplo n.º 2
0
    def test_realpath_relative(self):
        fs = self.FS()
        tempdir = fs.temporary_directory()
        self.addCleanup(fs.remove, tempdir)
        tempdir = fs.realpath(tempdir)

        source, to = RelativePath("source", "dir"), tempdir.descendant("to")
        fs.link(source=source, to=to)

        self.assertEqual(
            fs.realpath(to),
            to.sibling("source").descendant("dir"),
        )
Ejemplo n.º 3
0
 def test_relative_to(self):
     self.assertEqual(
         RelativePath("a", "b", "c").relative_to(Path("d", "e")),
         Path("d", "e", "a", "b", "c"),
     )
Ejemplo n.º 4
0
 def test_str(self):
     self.assertEqual(str(RelativePath("a", "b", "c")), "a/b/c")
Ejemplo n.º 5
0
 def test_from_string_relative_repeated_separator(self):
     self.assertEqual(
         Path.from_string("a" + os.sep * 3 + "b" + os.sep * 2 + "c"),
         RelativePath("a", "", "", "b", "", "c"),
     )
Ejemplo n.º 6
0
 def test_from_string_parent(self):
     self.assertEqual(
         Path.from_string((os.pardir + os.sep + "a" + os.sep + "b" +
                           os.sep + os.pardir + os.sep + "b"), ),
         RelativePath(os.pardir, "a", "b", os.pardir, "b"),
     )
Ejemplo n.º 7
0
 def test_is_pathlike(self):
     self.assertEqual(
         os.fspath(RelativePath("a", "b", "c")),
         os.path.join("a", "b", "c"),
     )
Ejemplo n.º 8
0
 def test_from_string_relative(self):
     self.assertEqual(
         Path.from_string(os.sep.join("abc")),
         RelativePath("a", "b", "c"),
     )
Ejemplo n.º 9
0
 def test_sibling(self):
     self.assertEqual(
         RelativePath("a", "b").sibling("c"),
         RelativePath("a", "c"),
     )
Ejemplo n.º 10
0
 def test_multi_descendant(self):
     self.assertEqual(
         RelativePath("a").descendant("b", "c"),
         RelativePath("a", "b", "c"),
     )
Ejemplo n.º 11
0
 def test_parent(self):
     self.assertEqual(RelativePath("a", "b").parent(), RelativePath("a"))
Ejemplo n.º 12
0
 def test_div(self):
     self.assertEqual(
         RelativePath("a") / "b" / "c",
         RelativePath("a", "b", "c"),
     )
Ejemplo n.º 13
0
 def test_dirname(self):
     self.assertEqual(
         RelativePath("a", "b", "c").dirname(),
         os.path.join("a", "b"),
     )
Ejemplo n.º 14
0
 def test_basename(self):
     self.assertEqual(RelativePath("a", "b").basename(), "b")
Ejemplo n.º 15
0
 def test_repr(self):
     self.assertEqual(repr(RelativePath("a", "b", "c")), "<Path a/b/c>")
Ejemplo n.º 16
0
 def test_str(self):
     self.assertEqual(
         str(RelativePath("a", "b", "c")),
         os.path.join("a", "b", "c"),
     )
Ejemplo n.º 17
0
 def test_div_nonsense(self):
     with self.assertRaises(TypeError):
         RelativePath("a") / object()