tests/test-pull-pull-corruption2.t
author Christian Ebert <blacktrash@gmx.net>
Wed, 01 Dec 2010 10:51:49 +0100
branchstable
changeset 13069 6aff4f144ad3
parent 12482 2f8740c639e4
permissions -rw-r--r--
keyword: copy: when copied source is a symlink, follow it 1) hg cp symlink copy -> copy is a symlink. 2) cp symlink copy; hg cp -A symlink copy -> copy is a regular file. In the second case we have to follow the symlink to its target to find out whether we have to unexpand keywords in the copy. Add test covering the case where the copied link's target is ignored by keyword but has content which would match the regex for expanded keywords to check whether we indeed leave the destination alone.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12482
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
     1
Corrupt an hg repo with two pulls.
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
     2
create one repo with a long history
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
     3
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
     4
  $ hg init source1
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
     5
  $ cd source1
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
     6
  $ touch foo
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
     7
  $ hg add foo
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
     8
  $ for i in 1 2 3 4 5 6 7 8 9 10; do
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
     9
  >     echo $i >> foo
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    10
  >     hg ci -m $i
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    11
  > done
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    12
  $ cd ..
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    13
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    14
create a third repo to pull both other repos into it
2000
6f6e210b38cf add benoit's test for issue148.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    15
12482
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    16
  $ hg init version2
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    17
  $ hg -R version2 pull source1 &
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    18
  $ sleep 1
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    19
  pulling from source1
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    20
  requesting all changes
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    21
  adding changesets
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    22
  adding manifests
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    23
  adding file changes
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    24
  added 10 changesets with 10 changes to 1 files
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    25
  (run 'hg update' to get a working copy)
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    26
  $ hg clone --pull -U version2 corrupted
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    27
  requesting all changes
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    28
  adding changesets
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    29
  adding manifests
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    30
  adding file changes
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    31
  added 10 changesets with 10 changes to 1 files
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    32
  $ wait
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    33
  $ hg -R corrupted verify
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    34
  checking changesets
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    35
  checking manifests
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    36
  crosschecking files in changesets and manifests
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    37
  checking files
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    38
  1 files, 10 changesets, 10 total revisions
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    39
  $ hg -R version2 verify
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    40
  checking changesets
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    41
  checking manifests
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    42
  crosschecking files in changesets and manifests
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    43
  checking files
2f8740c639e4 tests: unify test-pull-pull-corruption2
Matt Mackall <mpm@selenic.com>
parents: 2530
diff changeset
    44
  1 files, 10 changesets, 10 total revisions