view tests/test-symlink-os-yes-fs-no.py @ 8108:a26d33749bd8

made repo locks recursive and deprecate refcounting based lock releasing all locks should use the explicit lock.release mercurial.lock.lock.__del__ handles unwrapping recursive locks localrepo.lock/wlock are still using weakref in order to keep backward compatibiltiy to releasing locks via garbage collection by ensuring the release on __del__
author Ronny Pfannschmidt <Ronny.Pfannschmidt@gmx.de>
date Wed, 22 Apr 2009 02:01:22 +0200
parents 24fd94ed1cc0
children ca6cebd8734e
line wrap: on
line source

import os, sys
from mercurial import hg, ui

TESTDIR = os.environ["TESTDIR"]

# only makes sense to test on os which supports symlinks
if not hasattr(os, "symlink"):
    sys.exit(80) # SKIPPED_STATUS defined in run-tests.py

# this is what symlink would do on a non-symlink file system
def symlink_failure(src, dst):
    raise OSError, (1, "Operation not permitted")
os.symlink = symlink_failure

# now try cloning a repo which contains symlinks
u = ui.ui()
hg.clone(u, os.path.join(TESTDIR, 'test-no-symlinks.hg'), 'test1')