diff --git a/tests/test-pull-pull-corruption2 b/tests/test-pull-pull-corruption2 new file mode 100755 --- /dev/null +++ b/tests/test-pull-pull-corruption2 @@ -0,0 +1,24 @@ +#!/bin/sh +# +# Corrupt an hg repo with two pulls. +# + +# create one repo with a long history +hg init source1 +cd source1 +touch foo +hg add foo +for i in 1 2 3 4 5 6 7 8 9 10; do + echo $i >> foo + hg ci -m $i +done +cd .. + +# create a third repo to pull both other repos into it +hg init version2 +hg -R version2 pull source1 & +sleep 1 + +hg clone --pull -U version2 corrupted +hg -R corrupted verify +hg -R version2 verify diff --git a/tests/test-pull-pull-corruption2.out b/tests/test-pull-pull-corruption2.out new file mode 100644 --- /dev/null +++ b/tests/test-pull-pull-corruption2.out @@ -0,0 +1,22 @@ +pulling from source1 +requesting all changes +adding changesets +adding manifests +adding file changes +added 10 changesets with 10 changes to 1 files +(run 'hg update' to get a working copy) +requesting all changes +adding changesets +adding manifests +adding file changes +added 10 changesets with 10 changes to 1 files +checking changesets +checking manifests +crosschecking files in changesets and manifests +checking files +1 files, 10 changesets, 10 total revisions +checking changesets +checking manifests +crosschecking files in changesets and manifests +checking files +1 files, 10 changesets, 10 total revisions