Mercurial > hg
annotate tests/test-mq-missingfiles @ 7429:dbc40381620e
tests: Skip tests if they will fail because of outer repo
For different reasons these tests will fail if run in a tmpdir which is in a hg
repo.
The following three tests assumes no .hg in path dirs - I don't know how to
work around that:
* test-dispatch explicitly tests for no repo and expects "abort: There is no
Mercurial repository here (.hg not found)!"
* test-extension expects parentui to be None when not cd'ed to a repo dir
* test-globalopts tests that implicit -R works correctly - that could perhaps be
done from another repo instead of assuming no repo
The following two might be worth investigating further:
* test-convert-svn-sink fails for unknown reasons, starting with "abort:
unresolved merge conflicts (see hg resolve)"
* test-glog gets strange failures when testing "from outer space"
author | Mads Kiilerich <mads@kiilerich.com> |
---|---|
date | Thu, 27 Nov 2008 00:57:31 +0100 |
parents | e90e72c6b4c7 |
children | abd2bc899d86 |
rev | line source |
---|---|
5581
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
1 #!/bin/sh |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
2 |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
3 # Test issue835: |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
4 # qpush fails immediately when patching a missing file, but |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
5 # remaining added files are still created empty which will |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
6 # trick a future qrefresh. |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
7 |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
8 cat > writelines.py <<EOF |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
9 import sys |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
10 path = sys.argv[1] |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
11 args = sys.argv[2:] |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
12 assert (len(args) % 2) == 0 |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
13 |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
14 f = file(path, 'wb') |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
15 for i in xrange(len(args)/2): |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
16 count, s = args[2*i:2*i+2] |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
17 count = int(count) |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
18 s = s.decode('string_escape') |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
19 f.write(s*count) |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
20 f.close() |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
21 |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
22 EOF |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
23 |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
24 echo "[extensions]" >> $HGRCPATH |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
25 echo "mq=" >> $HGRCPATH |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
26 |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
27 hg init normal |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
28 cd normal |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
29 python ../writelines.py b 10 'a\n' |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
30 hg ci -Am addb |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
31 echo a > a |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
32 python ../writelines.py b 2 'b\n' 10 'a\n' 2 'c\n' |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
33 echo c > c |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
34 hg add a c |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
35 hg qnew -f changeb |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
36 hg qpop |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
37 hg rm b |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
38 hg ci -Am rmb |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
39 echo % push patch with missing target |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
40 hg qpush |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
41 echo % display added files |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
42 cat a |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
43 cat c |
5652
e90e72c6b4c7
patch: write rej files for missing targets (issue 853)
Patrick Mezard <pmezard@gmail.com>
parents:
5581
diff
changeset
|
44 echo % display rejections |
e90e72c6b4c7
patch: write rej files for missing targets (issue 853)
Patrick Mezard <pmezard@gmail.com>
parents:
5581
diff
changeset
|
45 cat b.rej |
5581
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
46 cd .. |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
47 |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
48 |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
49 echo "[diff]" >> $HGRCPATH |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
50 echo "git=1" >> $HGRCPATH |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
51 |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
52 hg init git |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
53 cd git |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
54 python ../writelines.py b 1 '\x00' |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
55 hg ci -Am addb |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
56 echo a > a |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
57 python ../writelines.py b 1 '\x01' 1 '\x00' |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
58 echo c > c |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
59 hg add a c |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
60 hg qnew -f changeb |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
61 hg qpop |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
62 hg rm b |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
63 hg ci -Am rmb |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
64 echo % push git patch with missing target |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
65 hg qpush 2>&1 | sed -e 's/b:.*/b: No such file or directory/' |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
66 hg st |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
67 echo % display added files |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
68 cat a |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
69 cat c |
5652
e90e72c6b4c7
patch: write rej files for missing targets (issue 853)
Patrick Mezard <pmezard@gmail.com>
parents:
5581
diff
changeset
|
70 echo % display rejections |
e90e72c6b4c7
patch: write rej files for missing targets (issue 853)
Patrick Mezard <pmezard@gmail.com>
parents:
5581
diff
changeset
|
71 cat b.rej |
5581
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
72 cd .. |
8a8c341bd292
mq: missing target files do not make qpush to fail immediately (issue 835)
Patrick Mezard <pmezard@gmail.com>
parents:
diff
changeset
|
73 |