comparison tests/test-revset @ 11419:3cc2e34d7a7d

tests: extend revset test
author Matt Mackall <mpm@selenic.com>
date Mon, 21 Jun 2010 13:26:13 -0500
parents 7a6ac83a15b0
children 88abbb046e66
comparison
equal deleted inserted replaced
11418:67bb9d78f05e 11419:3cc2e34d7a7d
1 #!/bin/sh 1 #!/bin/sh
2
3 HGENCODING=utf-8
4 export HGENCODING
2 5
3 try() { 6 try() {
4 echo '% hg debugrevspec' $@ 7 echo '% hg debugrevspec' $@
5 hg debugrevspec $@ 8 hg debugrevspec --debug $@
9 }
10
11 log() {
12 echo "% log '$1'"
13 hg log --template '{rev}\n' -r "$1"
6 } 14 }
7 15
8 hg init repo 16 hg init repo
9 cd repo 17 cd repo
18
19 echo a > a
10 hg branch a 20 hg branch a
11 hg ci -m "plain name" 21 hg ci -Aqm0
22
23 echo b > b
12 hg branch b 24 hg branch b
13 hg ci -m "another plain name" 25 hg ci -Aqm1
26
27 rm a
14 hg branch a-b-c- 28 hg branch a-b-c-
15 hg ci -m "with dashes" 29 hg ci -Aqm2 -u Bob
30
31 hg co 1
32 hg branch +a+b+c+
33 hg ci -Aqm3
34
35 hg co 2 # interleave
36 echo bb > b
16 hg branch -- -a-b-c- 37 hg branch -- -a-b-c-
17 hg ci -m "with leading dash" 38 hg ci -Aqm4 -d "May 12 2005"
18 hg branch +a+b+c+ 39
19 hg ci -m "with plusses" 40 hg co 3
20 hg branch /a/b/c/ 41 hg branch /a/b/c/
21 hg ci -m "with slashes" 42 hg ci -Aqm"5 bug"
43
44 hg merge 4
22 hg branch _a_b_c_ 45 hg branch _a_b_c_
23 hg ci -m "with underscores" 46 hg ci -Aqm"6 issue619"
47
24 hg branch .a.b.c. 48 hg branch .a.b.c.
25 hg ci -m "with dots" 49 hg ci -Aqm7
50
51 hg branch all
52 hg ci --close-branch -Aqm8
53
54 hg co 4
55 hg branch é
56 hg ci -Aqm9
57
58 hg tag -r6 1.0
26 59
27 # names that should work without quoting 60 # names that should work without quoting
28 try a 61 try a
29 try b-a 62 try b-a
30 try _a_b_c_ 63 try _a_b_c_
31 try _a_b_c_-a 64 try _a_b_c_-a
32 try .a.b.c. 65 try .a.b.c.
33 try .a.b.c.-a 66 try .a.b.c.-a
67 try -- '-a-b-c-' # complains
68 log -a-b-c- # succeeds with fallback
69 try -- -a-b-c--a # complains
70 try é
34 71
35 # quoting needed 72 # quoting needed
36 try '"-a-b-c-"'
37 try '"-a-b-c-"-a' 73 try '"-a-b-c-"-a'
38 74
75 log '1 or 2'
76 log '1|2'
77 log '1 and 2'
78 log '1&2'
79 try '1&2|3' # precedence - and is higher
80 try '1|2&3'
81 try '1&2&3' # associativity
82 try '1|(2|3)'
83 log '1.0' # tag
84 log 'a' # branch
85 log '2785f51ee'
86 log 'date(2005)'
87 log 'date(this is a test)'
88 log 'date()'
89 log 'date'
90 log 'date('
91 log 'date(tip)'
92 log '"date"'
93 log 'date(2005) and 1::'
94
95 log 'ancestor(1)'
96 log 'ancestor(4,5)'
97 log 'ancestors(5)'
98 log 'author(bob)'
99 log 'branch(é)'
100 log 'children(ancestor(4,5))'
101 log 'closed()'
102 log 'contains(a)'
103 log 'descendants(2 or 3)'
104 log 'file(b)'
105 log 'follow()'
106 log 'grep("issue\d+")'
107 log 'head()'
108 log 'heads(6::)'
109 log 'keyword(issue)'
110 log 'limit(head(), 1)'
111 log 'max(contains(a))'
112 log 'merge()'
113 log 'modifies(b)'
114 log 'p1(merge())'
115 log 'p2(merge())'
116 log 'parents(merge())'
117 log 'removes(a)'
118 log 'roots(all())'
119 log 'reverse(2 or 3 or 4 or 5)'
120 log 'sort(limit(reverse(all()), 3))'
121 log 'sort(2 or 3 or 4 or 5, date)'
122 log 'tagged()'
123 log 'user(bob)'
124
125 log '4::8'
126 log '4:8'
127
128 log 'sort(!merge() & (modifies(b) | user(bob) | keyword(bug) | keyword(issue) & 1::9), "-date")'