tests/test-no-symlinks.t
author Matt Mackall <mpm@selenic.com>
Wed, 24 Nov 2010 15:56:32 -0600
changeset 13047 6c375e07d673
parent 12917 a419cb2395d5
child 14116 cd3032437064
permissions -rwxr-xr-x
branch: operate on branch names in local string space where possible Previously, branch names were ideally manipulated as UTF-8 strings, because they were stored as UTF-8 in the dirstate and the changelog and could not be safely converted to the local encoding and back. However, only about 80% of branch name code was actually using the right encoding conventions. This patch uses the localstr addition to allow working on branch names as local strings, which simplifies handling so that the previously incorrect code becomes correct.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12917
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
     1
  $ "$TESTDIR/hghave" no-symlink || exit 80
5085
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     2
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     3
# The following script was used to create the bundle:
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     4
#
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     5
# hg init symlinks
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     6
# cd symlinks
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     7
# echo a > a
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     8
# mkdir d
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
     9
# echo b > d/b
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    10
# ln -s a a.lnk
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    11
# ln -s d/b d/b.lnk
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    12
# hg ci -Am t
5089
9b5ae133bd5a test-no-symlinks: rename .bundle into .hg for consistency.
Patrick Mezard <pmezard@gmail.com>
parents: 5085
diff changeset
    13
# hg bundle --base null ../test-no-symlinks.hg
5085
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    14
12917
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    15
Extract a symlink on a platform not supporting them
5085
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    16
12917
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    17
  $ hg init t
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    18
  $ cd t
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    19
  $ hg pull -q "$TESTDIR/test-no-symlinks.hg"
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    20
  $ hg update
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    21
  4 files updated, 0 files merged, 0 files removed, 0 files unresolved
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    22
  $ cat a.lnk && echo
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    23
  a
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    24
  $ cat d/b.lnk && echo
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    25
  d/b
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    26
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    27
Copy a symlink and move another
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    28
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    29
  $ hg copy a.lnk d/a2.lnk
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    30
  $ hg mv d/b.lnk b2.lnk
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    31
  $ hg ci -Am copy
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    32
  $ cat d/a2.lnk && echo
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    33
  a
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    34
  $ cat b2.lnk && echo
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    35
  d/b
5085
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    36
12917
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    37
Bundle and extract again
5085
dcfd75502b82 Test symlink handling on platform not supporting them
Patrick Mezard <pmezard@gmail.com>
parents:
diff changeset
    38
12917
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    39
  $ hg bundle --base null ../symlinks.hg
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    40
  2 changesets found
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    41
  $ cd ..
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    42
  $ hg init t2
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    43
  $ cd t2
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    44
  $ hg pull ../symlinks.hg
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    45
  pulling from ../symlinks.hg
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    46
  requesting all changes
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    47
  adding changesets
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    48
  adding manifests
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    49
  adding file changes
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    50
  added 2 changesets with 6 changes to 6 files
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    51
  (run 'hg update' to get a working copy)
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    52
  $ hg update
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    53
  5 files updated, 0 files merged, 0 files removed, 0 files unresolved
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    54
  $ cat a.lnk && echo
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    55
  a
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    56
  $ cat d/a2.lnk && echo
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    57
  a
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    58
  $ cat b2.lnk && echo
a419cb2395d5 tests: unify test-no-symlinks
Patrick Mezard <pmezard@gmail.com>
parents: 5091
diff changeset
    59
  d/b