view tests/test-symlink-os-yes-fs-no.py @ 8548:3ccbe42ff72f

setup: read .hg_archival.txt for version info (issue1670) Previously, setup.py was enhanced to identify the Mercurial version from either .hg/ or mercurial/__version__.py. When archives are created using 'hg archive' or via hgweb, neither of those options are available. However, there is a .hg_archival.txt file in the root of the archive that has the information. This patch enhances setup.py to identify the Mercurial version from the .hg_archival.txt file when there is no .hg/ or mercurial/__version__.py available.
author Jeremy Whitlock <jcscoobyrs@gmail.com>
date Fri, 22 May 2009 21:03:06 +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')