Mercurial > hg
changeset 12459:15f07e8e4742
tests: unify test-merge-symlinks
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Sun, 26 Sep 2010 13:43:21 -0500 |
parents | 9446bd059da3 |
children | 09168638b313 |
files | tests/test-merge-symlinks tests/test-merge-symlinks.out tests/test-merge-symlinks.t |
diffstat | 3 files changed, 62 insertions(+), 63 deletions(-) [+] |
line wrap: on
line diff
--- a/tests/test-merge-symlinks Sun Sep 26 13:43:21 2010 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,46 +0,0 @@ -#!/bin/sh - -cat > echo.py <<EOF -#!/usr/bin/env python -import os, sys -try: - import msvcrt - msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY) - msvcrt.setmode(sys.stderr.fileno(), os.O_BINARY) -except ImportError: - pass - -for k in ('HG_FILE', 'HG_MY_ISLINK', 'HG_OTHER_ISLINK', 'HG_BASE_ISLINK'): - print k, os.environ[k] -EOF - -# Create 2 heads containing the same file, once as -# a file, once as a link. Bundle was generated with: -# -# hg init t -# cd t -# echo a > a -# hg ci -qAm t0 -d '0 0' -# echo l > l -# hg ci -qAm t1 -d '1 0' -# hg up -C 0 -# ln -s a l -# hg ci -qAm t2 -d '2 0' -# echo l2 > l2 -# hg ci -qAm t3 -d '3 0' - -hg init t -cd t -hg -q pull "$TESTDIR/test-merge-symlinks.hg" -hg up -C 3 - -# Merge them and display *_ISLINK vars -echo % merge heads -HGMERGE="python ../echo.py" hg merge - -# Test working directory symlink bit calculation wrt copies, -# especially on non-supporting systems. -echo % merge working directory -hg up -C 2 -hg copy l l2 -HGMERGE="python ../echo.py" hg up 3
--- a/tests/test-merge-symlinks.out Sun Sep 26 13:43:21 2010 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,17 +0,0 @@ -3 files updated, 0 files merged, 0 files removed, 0 files unresolved -% merge heads -HG_FILE l -HG_MY_ISLINK 1 -HG_OTHER_ISLINK 0 -HG_BASE_ISLINK 0 -merging l -0 files updated, 1 files merged, 0 files removed, 0 files unresolved -(branch merge, don't forget to commit) -% merge working directory -1 files updated, 0 files merged, 1 files removed, 0 files unresolved -HG_FILE l2 -HG_MY_ISLINK 1 -HG_OTHER_ISLINK 0 -HG_BASE_ISLINK 0 -merging l2 -0 files updated, 1 files merged, 0 files removed, 0 files unresolved
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-merge-symlinks.t Sun Sep 26 13:43:21 2010 -0500 @@ -0,0 +1,62 @@ + + $ cat > echo.py <<EOF + > #!/usr/bin/env python + > import os, sys + > try: + > import msvcrt + > msvcrt.setmode(sys.stdout.fileno(), os.O_BINARY) + > msvcrt.setmode(sys.stderr.fileno(), os.O_BINARY) + > except ImportError: + > pass + > + > for k in ('HG_FILE', 'HG_MY_ISLINK', 'HG_OTHER_ISLINK', 'HG_BASE_ISLINK'): + > print k, os.environ[k] + > EOF + +Create 2 heads containing the same file, once as +a file, once as a link. Bundle was generated with: + +# hg init t +# cd t +# echo a > a +# hg ci -qAm t0 -d '0 0' +# echo l > l +# hg ci -qAm t1 -d '1 0' +# hg up -C 0 +# ln -s a l +# hg ci -qAm t2 -d '2 0' +# echo l2 > l2 +# hg ci -qAm t3 -d '3 0' + + $ hg init t + $ cd t + $ hg -q pull "$TESTDIR/test-merge-symlinks.hg" + $ hg up -C 3 + 3 files updated, 0 files merged, 0 files removed, 0 files unresolved + +Merge them and display *_ISLINK vars +merge heads + + $ HGMERGE="python ../echo.py" hg merge + HG_FILE l + HG_MY_ISLINK 1 + HG_OTHER_ISLINK 0 + HG_BASE_ISLINK 0 + merging l + 0 files updated, 1 files merged, 0 files removed, 0 files unresolved + (branch merge, don't forget to commit) + +Test working directory symlink bit calculation wrt copies, +especially on non-supporting systems. +merge working directory + + $ hg up -C 2 + 1 files updated, 0 files merged, 1 files removed, 0 files unresolved + $ hg copy l l2 + $ HGMERGE="python ../echo.py" hg up 3 + HG_FILE l2 + HG_MY_ISLINK 1 + HG_OTHER_ISLINK 0 + HG_BASE_ISLINK 0 + merging l2 + 0 files updated, 1 files merged, 0 files removed, 0 files unresolved