Mercurial > hg-stable
changeset 5149:1a028bdaddce
Merge with crew-stable
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Wed, 08 Aug 2007 23:11:12 +0200 |
parents | 06154aff2b1a (current diff) dcfd75502b82 (diff) |
children | ff461baa9c4e |
files | tests/test-no-symlinks |
diffstat | 4 files changed, 82 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/tests/hghave Wed Aug 08 23:00:01 2007 +0200 +++ b/tests/hghave Wed Aug 08 23:11:12 2007 +0200 @@ -1,6 +1,7 @@ #!/usr/bin/env python """Test the running system for features availability. Exit with zero -if all features are there, non-zero otherwise. +if all features are there, non-zero otherwise. If a feature name is +prefixed with "no-", the absence of feature is tested. """ import optparse import os @@ -67,13 +68,19 @@ failures += 1 for feature in args: + negate = feature.startswith('no-') + if negate: + feature = feature[3:] + if feature not in checks: error('hghave: unknown feature: ' + feature) continue check, desc = checks[feature] - if not check(): + if not negate and not check(): error('hghave: missing feature: ' + desc) + elif negate and check(): + error('hghave: unexpected feature: ' + desc) if failures != 0: sys.exit(1)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-no-symlinks Wed Aug 08 23:11:12 2007 +0200 @@ -0,0 +1,47 @@ +#!/bin/sh + +"$TESTDIR/hghave" no-symlink || exit 80 + +# The following script was used to create the bundle: +# +# hg init symlinks +# cd symlinks +# echo a > a +# mkdir d +# echo b > d/b +# ln -s a a.lnk +# ln -s d/b d/b.lnk +# hg ci -Am t +# hg bundle --base null ../test-no-symlinks.bundle + +# Extract a symlink on a platform not supporting them +echo % unbundle +hg init t +cd t +hg pull "$TESTDIR/test-no-symlinks.bundle" +hg update + +cat a.lnk && echo +cat d/b.lnk && echo + +# Copy a symlink and move another +echo % move and copy +hg copy a.lnk d/a2.lnk +hg mv d/b.lnk b2.lnk +hg ci -Am copy +cat d/a2.lnk && echo +cat b2.lnk && echo + +# Bundle and extract again +echo % bundle +hg bundle --base null ../symlinks.bundle +cd .. + +hg init t2 +cd t2 +hg pull ../symlinks.bundle +hg update + +cat a.lnk && echo +cat d/a2.lnk && echo +cat b2.lnk && echo \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-no-symlinks.out Wed Aug 08 23:11:12 2007 +0200 @@ -0,0 +1,26 @@ +% unbundle +pulling from C:\dev\mercurial\hg\hg-local-stable\tests/test-no-symlinks.bundle +requesting all changes +adding changesets +adding manifests +adding file changes +added 1 changesets with 4 changes to 4 files +(run 'hg update' to get a working copy) +4 files updated, 0 files merged, 0 files removed, 0 files unresolved +a +d/b +% move and copy +a +d/b +% bundle +pulling from ../symlinks.bundle +requesting all changes +adding changesets +adding manifests +adding file changes +added 2 changesets with 6 changes to 6 files +(run 'hg update' to get a working copy) +5 files updated, 0 files merged, 0 files removed, 0 files unresolved +a +a +d/b