annotate tests/test-up-local-change @ 460:6409d9a0df43

add dirstate debugging commands -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 add dirstate debugging commands As I've played with various different merges and more recently rawcommit, I've found the following patch to be very very helpful in figuring out whether the dirstate is being left in a consistent or inconsistent state with respect to the current manifest. I attempted to deduce the invariants that were assumed by the current code, and then check it in this code. I may or may not have captured the design intent in this check; if not, I'd be very happy to hear more clearly what was intended, so that I can write tests to that expectation. Anyway, here's the patch. Not sure if it's a good idea to commit it to the mainline, or just leave it as a debugging aid. I attempted to package it so that it doesn't interfere with normal usage. Michael Fetterman (tweaked by mpm: remove -d magic) manifest hash: 869f5b5f954dc0f46ba27322359e811d5e21d71c -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.0 (GNU/Linux) iD8DBQFCvP77ywK+sNU5EO8RArmtAKCCVuI2slANzWZ26P5edtH/ixdwNwCfZLWl 5P+V+C92II3usO4YW2MULKY= =/Pv4 -----END PGP SIGNATURE-----
author mpm@selenic.com
date Fri, 24 Jun 2005 22:51:39 -0800
parents b4e0e20646bb
children c5705ab9cebd
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
1 #!/bin/bash
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
2
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
3 export HGMERGE=true
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
4
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
5 set -ex
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
6 mkdir r1
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
7 cd r1
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
8 hg init
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
9 echo a > a
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
10 hg addremove
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
11 hg commit -t "1" -u test -d "0 0"
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
12
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
13 cd ..
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
14 mkdir r2
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
15 cd r2
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
16 hg init ../r1
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
17 hg up
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
18 echo abc > a
332
6c869059beb4 testing fixups
mpm@selenic.com
parents: 331
diff changeset
19 hg diff > ../d
6c869059beb4 testing fixups
mpm@selenic.com
parents: 331
diff changeset
20 sed "s/\(\(---\|+++\).*\)\t.*/\1/" < ../d
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
21
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
22 cd ../r1
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
23 echo b > b
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
24 echo a2 > a
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
25 hg addremove
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
26 hg commit -t "2" -u test -d "0 0"
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
27
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
28 cd ../r2
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
29 hg -q pull ../r1
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
30 hg status
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
31 hg -d up
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
32 hg -d up -m
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
33 hg parents
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
34 hg -v history
332
6c869059beb4 testing fixups
mpm@selenic.com
parents: 331
diff changeset
35 hg diff > ../d
6c869059beb4 testing fixups
mpm@selenic.com
parents: 331
diff changeset
36 sed "s/\(\(---\|+++\).*\)\t.*/\1/" < ../d
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
37