Esempio n. 1
0
 def test_create_new(self):
     with namedTemporaryDir() as tmpdir:
         target = os.path.join(tmpdir, "target")
         link = os.path.join(tmpdir, "link")
         fileUtils.atomic_symlink(target, link)
         self.assertEqual(os.readlink(link), target)
         self.assertFalse(os.path.exists(link + ".tmp"))
Esempio n. 2
0
 def test_create_new(self):
     with namedTemporaryDir() as tmpdir:
         target = os.path.join(tmpdir, "target")
         link = os.path.join(tmpdir, "link")
         fileUtils.atomic_symlink(target, link)
         self.assertEqual(os.readlink(link), target)
         self.assertFalse(os.path.exists(link + ".tmp"))
Esempio n. 3
0
def test_atomic_symlink_create_new():
    with namedTemporaryDir() as tmpdir:
        target = os.path.join(tmpdir, "target")
        link = os.path.join(tmpdir, "link")
        fileUtils.atomic_symlink(target, link)
        assert os.readlink(link) == target
        assert not os.path.exists(link + ".tmp")
Esempio n. 4
0
def test_atomic_symlink_error_isdir():
    with namedTemporaryDir() as tmpdir:
        target = os.path.join(tmpdir, "target")
        link = os.path.join(tmpdir, "link")
        os.mkdir(link)
        with pytest.raises(OSError):
            fileUtils.atomic_symlink(target, link)
Esempio n. 5
0
def test_atomic_symlink_error_isfile():
    with namedTemporaryDir() as tmpdir:
        target = os.path.join(tmpdir, "target")
        link = os.path.join(tmpdir, "link")
        with open(link, 'w') as f:
            f.write('data')
        with pytest.raises(OSError):
            fileUtils.atomic_symlink(target, link)
Esempio n. 6
0
 def test_replace_stale_temporary_link(self):
     with namedTemporaryDir() as tmpdir:
         target = os.path.join(tmpdir, "target")
         link = os.path.join(tmpdir, "link")
         tmp_link = link + ".tmp"
         fileUtils.atomic_symlink("stale", tmp_link)
         fileUtils.atomic_symlink(target, link)
         self.assertEqual(os.readlink(link), target)
         self.assertFalse(os.path.exists(tmp_link))
Esempio n. 7
0
 def test_replace_stale_temporary_link(self):
     with namedTemporaryDir() as tmpdir:
         target = os.path.join(tmpdir, "target")
         link = os.path.join(tmpdir, "link")
         tmp_link = link + ".tmp"
         fileUtils.atomic_symlink("stale", tmp_link)
         fileUtils.atomic_symlink(target, link)
         self.assertEqual(os.readlink(link), target)
         self.assertFalse(os.path.exists(tmp_link))
Esempio n. 8
0
def test_atomic_symlink_replace_stale_temporary():
    with namedTemporaryDir() as tmpdir:
        target = os.path.join(tmpdir, "target")
        link = os.path.join(tmpdir, "link")
        tmp_link = link + ".tmp"
        fileUtils.atomic_symlink("stale", tmp_link)
        fileUtils.atomic_symlink(target, link)
        assert os.readlink(link) == target
        assert not os.path.exists(tmp_link)
Esempio n. 9
0
 def test_keep_current(self):
     with namedTemporaryDir() as tmpdir:
         target = os.path.join(tmpdir, "target")
         link = os.path.join(tmpdir, "link")
         fileUtils.atomic_symlink(target, link)
         current = os.lstat(link)
         fileUtils.atomic_symlink(target, link)
         new = os.lstat(link)
         self.assertEqual(current, new)
         self.assertFalse(os.path.exists(link + ".tmp"))
Esempio n. 10
0
 def test_keep_current(self):
     with namedTemporaryDir() as tmpdir:
         target = os.path.join(tmpdir, "target")
         link = os.path.join(tmpdir, "link")
         fileUtils.atomic_symlink(target, link)
         current = os.lstat(link)
         fileUtils.atomic_symlink(target, link)
         new = os.lstat(link)
         self.assertEqual(current, new)
         self.assertFalse(os.path.exists(link + ".tmp"))