Mercurial > hg > mercurial-crew-with-dirclash
annotate tests/test-patch @ 5369:7530334bf301
revlog: generate trivial deltas against null revision
To avoid extra memory usage and performance issues with large files,
generate a trivial delta header for deltas against the null revision
rather than calling the usual delta generator.
We append the delta header to meta rather than prepending it to data
to avoid a large allocate and copy.
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Wed, 03 Oct 2007 17:17:27 -0500 |
parents | 0de7e6e27fe4 |
children |
rev | line source |
---|---|
4645
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
1 #!/bin/sh |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
2 |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
3 cat > patchtool.py <<EOF |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
4 import sys |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
5 print 'Using custom patch' |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
6 if '--binary' in sys.argv: |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
7 print '--binary found !' |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
8 EOF |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
9 |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
10 echo "[ui]" >> $HGRCPATH |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
11 echo "patch=python ../patchtool.py" >> $HGRCPATH |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
12 |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
13 hg init a |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
14 cd a |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
15 echo a > a |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
16 hg commit -Ama -d '1 0' |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
17 echo b >> a |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
18 hg commit -Amb -d '2 0' |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
19 cd .. |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
20 |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
21 # This test check that: |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
22 # - custom patch commands with arguments actually works |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
23 # - patch code does not try to add weird arguments like |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
24 # --binary when custom patch commands are used. For instance |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
25 # --binary is added by default under win32. |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
26 |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
27 echo % check custom patch options are honored |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
28 hg --cwd a export -o ../a.diff tip |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
29 hg clone -r 0 a b |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
30 |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
31 hg --cwd b import -v ../a.diff |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
32 |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
33 |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
34 |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
35 |
0de7e6e27fe4
Add tests for ui.patch regression.
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
36 |