test-revset-legacy-lookup.t
289 lines
| 10.3 KiB
| text/troff
|
Tads3Lexer
/ tests / test-revset-legacy-lookup.t
Boris Feld
|
r37777 | |||
$ cat >> $HGRCPATH << EOF | ||||
> [ui] | ||||
> logtemplate="{rev}:{node|short} {desc} [{tags}]\n" | ||||
> EOF | ||||
$ hg init legacy-lookup | ||||
$ cd legacy-lookup | ||||
$ echo a > a | ||||
$ hg add a | ||||
$ hg commit -m 'first' | ||||
$ echo aa > a | ||||
$ hg commit -m 'second' | ||||
$ hg log -G | ||||
@ 1:43114e71eddd second [tip] | ||||
| | ||||
o 0:a87874c6ec31 first [] | ||||
Create a tag that looks like a revset | ||||
$ hg tag 'rev(0)' | ||||
$ hg log -G | ||||
@ 2:fb616635b18f Added tag rev(0) for changeset 43114e71eddd [tip] | ||||
| | ||||
o 1:43114e71eddd second [rev(0)] | ||||
| | ||||
o 0:a87874c6ec31 first [] | ||||
See how various things are resolved | ||||
----------------------------------- | ||||
Revision numbers | ||||
$ hg log -r '0' | ||||
0:a87874c6ec31 first [] | ||||
$ hg log -r '1' | ||||
1:43114e71eddd second [rev(0)] | ||||
"rev(x)" form (the one conflicting with the tags) | ||||
(resolved as a label) | ||||
$ hg log -r 'rev(0)' | ||||
1:43114e71eddd second [rev(0)] | ||||
$ hg log -r 'rev(1)' | ||||
1:43114e71eddd second [rev(0)] | ||||
same within a simple revspec | ||||
(still resolved as the label) | ||||
$ hg log -r ':rev(0)' | ||||
0:a87874c6ec31 first [] | ||||
1:43114e71eddd second [rev(0)] | ||||
$ hg log -r 'rev(0):' | ||||
1:43114e71eddd second [rev(0)] | ||||
2:fb616635b18f Added tag rev(0) for changeset 43114e71eddd [tip] | ||||
within a more advances revset | ||||
(still resolved as the label) | ||||
$ hg log -r 'rev(0) and branch(default)' | ||||
0:a87874c6ec31 first [] | ||||
Boris Feld
|
r37778 | with explicit revset resolution | ||
(still resolved as the label) | ||||
$ hg log -r 'revset(rev(0))' | ||||
0:a87874c6ec31 first [] | ||||
Boris Feld
|
r37777 | some of the above with quote to force its resolution as a label | ||
$ hg log -r ':"rev(0)"' | ||||
0:a87874c6ec31 first [] | ||||
1:43114e71eddd second [rev(0)] | ||||
$ hg log -r '"rev(0)":' | ||||
1:43114e71eddd second [rev(0)] | ||||
2:fb616635b18f Added tag rev(0) for changeset 43114e71eddd [tip] | ||||
$ hg log -r '"rev(0)" and branch(default)' | ||||
1:43114e71eddd second [rev(0)] | ||||
confusing bits within parents | ||||
$ hg log -r '(rev(0))' | ||||
0:a87874c6ec31 first [] | ||||
$ hg log -r '( rev(0))' | ||||
0:a87874c6ec31 first [] | ||||
$ hg log -r '("rev(0)")' | ||||
1:43114e71eddd second [rev(0)] | ||||
Test label with quote in them. | ||||
$ hg tag '"foo"' | ||||
$ hg log -r '"foo"' | ||||
2:fb616635b18f Added tag rev(0) for changeset 43114e71eddd ["foo"] | ||||
$ hg log -r '("foo")' | ||||
abort: unknown revision 'foo'! | ||||
[255] | ||||
Boris Feld
|
r37778 | $ hg log -r 'revset("foo")' | ||
abort: unknown revision 'foo'! | ||||
[255] | ||||
Boris Feld
|
r37777 | $ hg log -r '("\"foo\"")' | ||
2:fb616635b18f Added tag rev(0) for changeset 43114e71eddd ["foo"] | ||||
Boris Feld
|
r37778 | $ hg log -r 'revset("\"foo\"")' | ||
2:fb616635b18f Added tag rev(0) for changeset 43114e71eddd ["foo"] | ||||
Boris Feld
|
r37777 | |||
Test label with dash in them. | ||||
$ hg tag 'foo-bar' | ||||
$ hg log -r 'foo-bar' | ||||
3:a50aae922707 Added tag "foo" for changeset fb616635b18f [foo-bar] | ||||
$ hg log -r '(foo-bar)' | ||||
3:a50aae922707 Added tag "foo" for changeset fb616635b18f [foo-bar] | ||||
$ hg log -r '"foo-bar"' | ||||
3:a50aae922707 Added tag "foo" for changeset fb616635b18f [foo-bar] | ||||
$ hg log -r '("foo-bar")' | ||||
3:a50aae922707 Added tag "foo" for changeset fb616635b18f [foo-bar] | ||||
Test label with + in them. | ||||
$ hg tag 'foo+bar' | ||||
$ hg log -r 'foo+bar' | ||||
4:bbf52b87b370 Added tag foo-bar for changeset a50aae922707 [foo+bar] | ||||
$ hg log -r '(foo+bar)' | ||||
abort: unknown revision 'foo'! | ||||
[255] | ||||
Boris Feld
|
r37778 | $ hg log -r 'revset(foo+bar)' | ||
abort: unknown revision 'foo'! | ||||
[255] | ||||
Boris Feld
|
r37777 | $ hg log -r '"foo+bar"' | ||
4:bbf52b87b370 Added tag foo-bar for changeset a50aae922707 [foo+bar] | ||||
$ hg log -r '("foo+bar")' | ||||
4:bbf52b87b370 Added tag foo-bar for changeset a50aae922707 [foo+bar] | ||||
Test tag with numeric version number. | ||||
$ hg tag '1.2' | ||||
$ hg log -r '1.2' | ||||
5:ff42fde8edbb Added tag foo+bar for changeset bbf52b87b370 [1.2] | ||||
$ hg log -r '(1.2)' | ||||
5:ff42fde8edbb Added tag foo+bar for changeset bbf52b87b370 [1.2] | ||||
Boris Feld
|
r37778 | $ hg log -r 'revset(1.2)' | ||
5:ff42fde8edbb Added tag foo+bar for changeset bbf52b87b370 [1.2] | ||||
Boris Feld
|
r37777 | $ hg log -r '"1.2"' | ||
5:ff42fde8edbb Added tag foo+bar for changeset bbf52b87b370 [1.2] | ||||
$ hg log -r '("1.2")' | ||||
5:ff42fde8edbb Added tag foo+bar for changeset bbf52b87b370 [1.2] | ||||
$ hg log -r '::"1.2"' | ||||
0:a87874c6ec31 first [] | ||||
1:43114e71eddd second [rev(0)] | ||||
2:fb616635b18f Added tag rev(0) for changeset 43114e71eddd ["foo"] | ||||
3:a50aae922707 Added tag "foo" for changeset fb616635b18f [foo-bar] | ||||
4:bbf52b87b370 Added tag foo-bar for changeset a50aae922707 [foo+bar] | ||||
5:ff42fde8edbb Added tag foo+bar for changeset bbf52b87b370 [1.2] | ||||
$ hg log -r '::1.2' | ||||
0:a87874c6ec31 first [] | ||||
1:43114e71eddd second [rev(0)] | ||||
2:fb616635b18f Added tag rev(0) for changeset 43114e71eddd ["foo"] | ||||
3:a50aae922707 Added tag "foo" for changeset fb616635b18f [foo-bar] | ||||
4:bbf52b87b370 Added tag foo-bar for changeset a50aae922707 [foo+bar] | ||||
5:ff42fde8edbb Added tag foo+bar for changeset bbf52b87b370 [1.2] | ||||
Test tag with parenthesis (but not a valid revset) | ||||
$ hg tag 'release_4.1(candidate1)' | ||||
$ hg log -r 'release_4.1(candidate1)' | ||||
6:db72e24fe069 Added tag 1.2 for changeset ff42fde8edbb [release_4.1(candidate1)] | ||||
$ hg log -r '(release_4.1(candidate1))' | ||||
hg: parse error: unknown identifier: release_4.1 | ||||
[255] | ||||
Boris Feld
|
r37778 | $ hg log -r 'revset(release_4.1(candidate1))' | ||
hg: parse error: unknown identifier: release_4.1 | ||||
[255] | ||||
Boris Feld
|
r37777 | $ hg log -r '"release_4.1(candidate1)"' | ||
6:db72e24fe069 Added tag 1.2 for changeset ff42fde8edbb [release_4.1(candidate1)] | ||||
$ hg log -r '("release_4.1(candidate1)")' | ||||
6:db72e24fe069 Added tag 1.2 for changeset ff42fde8edbb [release_4.1(candidate1)] | ||||
$ hg log -r '::"release_4.1(candidate1)"' | ||||
0:a87874c6ec31 first [] | ||||
1:43114e71eddd second [rev(0)] | ||||
2:fb616635b18f Added tag rev(0) for changeset 43114e71eddd ["foo"] | ||||
3:a50aae922707 Added tag "foo" for changeset fb616635b18f [foo-bar] | ||||
4:bbf52b87b370 Added tag foo-bar for changeset a50aae922707 [foo+bar] | ||||
5:ff42fde8edbb Added tag foo+bar for changeset bbf52b87b370 [1.2] | ||||
6:db72e24fe069 Added tag 1.2 for changeset ff42fde8edbb [release_4.1(candidate1)] | ||||
$ hg log -r '::release_4.1(candidate1)' | ||||
hg: parse error: unknown identifier: release_4.1 | ||||
[255] | ||||
Test tag with parenthesis and other function like char | ||||
$ hg tag 'release_4.1(arch=x86,arm)' | ||||
$ hg log -r 'release_4.1(arch=x86,arm)' | ||||
7:b29b25d7d687 Added tag release_4.1(candidate1) for changeset db72e24fe069 [release_4.1(arch=x86,arm)] | ||||
$ hg log -r '(release_4.1(arch=x86,arm))' | ||||
hg: parse error: unknown identifier: release_4.1 | ||||
[255] | ||||
Boris Feld
|
r37778 | $ hg log -r 'revset(release_4.1(arch=x86,arm))' | ||
hg: parse error: unknown identifier: release_4.1 | ||||
[255] | ||||
Boris Feld
|
r37777 | $ hg log -r '"release_4.1(arch=x86,arm)"' | ||
7:b29b25d7d687 Added tag release_4.1(candidate1) for changeset db72e24fe069 [release_4.1(arch=x86,arm)] | ||||
$ hg log -r '("release_4.1(arch=x86,arm)")' | ||||
7:b29b25d7d687 Added tag release_4.1(candidate1) for changeset db72e24fe069 [release_4.1(arch=x86,arm)] | ||||
$ hg log -r '::"release_4.1(arch=x86,arm)"' | ||||
0:a87874c6ec31 first [] | ||||
1:43114e71eddd second [rev(0)] | ||||
2:fb616635b18f Added tag rev(0) for changeset 43114e71eddd ["foo"] | ||||
3:a50aae922707 Added tag "foo" for changeset fb616635b18f [foo-bar] | ||||
4:bbf52b87b370 Added tag foo-bar for changeset a50aae922707 [foo+bar] | ||||
5:ff42fde8edbb Added tag foo+bar for changeset bbf52b87b370 [1.2] | ||||
6:db72e24fe069 Added tag 1.2 for changeset ff42fde8edbb [release_4.1(candidate1)] | ||||
7:b29b25d7d687 Added tag release_4.1(candidate1) for changeset db72e24fe069 [release_4.1(arch=x86,arm)] | ||||
$ hg log -r '::release_4.1(arch=x86,arm)' | ||||
hg: parse error: unknown identifier: release_4.1 | ||||
[255] | ||||
Test tag conflicting with revset function | ||||
$ hg tag 'secret(team=foo,project=bar)' | ||||
$ hg log -r 'secret(team=foo,project=bar)' | ||||
8:6b2e2d4ea455 Added tag release_4.1(arch=x86,arm) for changeset b29b25d7d687 [secret(team=foo,project=bar)] | ||||
$ hg log -r '(secret(team=foo,project=bar))' | ||||
hg: parse error: secret takes no arguments | ||||
[255] | ||||
Boris Feld
|
r37778 | $ hg log -r 'revset(secret(team=foo,project=bar))' | ||
hg: parse error: secret takes no arguments | ||||
[255] | ||||
Boris Feld
|
r37777 | $ hg log -r '"secret(team=foo,project=bar)"' | ||
8:6b2e2d4ea455 Added tag release_4.1(arch=x86,arm) for changeset b29b25d7d687 [secret(team=foo,project=bar)] | ||||
$ hg log -r '("secret(team=foo,project=bar)")' | ||||
8:6b2e2d4ea455 Added tag release_4.1(arch=x86,arm) for changeset b29b25d7d687 [secret(team=foo,project=bar)] | ||||
$ hg log -r '::"secret(team=foo,project=bar)"' | ||||
0:a87874c6ec31 first [] | ||||
1:43114e71eddd second [rev(0)] | ||||
2:fb616635b18f Added tag rev(0) for changeset 43114e71eddd ["foo"] | ||||
3:a50aae922707 Added tag "foo" for changeset fb616635b18f [foo-bar] | ||||
4:bbf52b87b370 Added tag foo-bar for changeset a50aae922707 [foo+bar] | ||||
5:ff42fde8edbb Added tag foo+bar for changeset bbf52b87b370 [1.2] | ||||
6:db72e24fe069 Added tag 1.2 for changeset ff42fde8edbb [release_4.1(candidate1)] | ||||
7:b29b25d7d687 Added tag release_4.1(candidate1) for changeset db72e24fe069 [release_4.1(arch=x86,arm)] | ||||
8:6b2e2d4ea455 Added tag release_4.1(arch=x86,arm) for changeset b29b25d7d687 [secret(team=foo,project=bar)] | ||||
$ hg log -r '::secret(team=foo,project=bar)' | ||||
hg: parse error: secret takes no arguments | ||||
[255] | ||||
Test tag with space | ||||
$ hg tag 'my little version' | ||||
$ hg log -r 'my little version' | ||||
9:269192bf8fc3 Added tag secret(team=foo,project=bar) for changeset 6b2e2d4ea455 [my little version] | ||||
$ hg log -r '(my little version)' | ||||
hg: parse error at 4: unexpected token: symbol | ||||
((my little version) | ||||
^ here) | ||||
[255] | ||||
Boris Feld
|
r37778 | $ hg log -r 'revset(my little version)' | ||
hg: parse error at 10: unexpected token: symbol | ||||
(revset(my little version) | ||||
^ here) | ||||
[255] | ||||
Boris Feld
|
r37777 | $ hg log -r '"my little version"' | ||
9:269192bf8fc3 Added tag secret(team=foo,project=bar) for changeset 6b2e2d4ea455 [my little version] | ||||
$ hg log -r '("my little version")' | ||||
9:269192bf8fc3 Added tag secret(team=foo,project=bar) for changeset 6b2e2d4ea455 [my little version] | ||||
$ hg log -r '::"my little version"' | ||||
0:a87874c6ec31 first [] | ||||
1:43114e71eddd second [rev(0)] | ||||
2:fb616635b18f Added tag rev(0) for changeset 43114e71eddd ["foo"] | ||||
3:a50aae922707 Added tag "foo" for changeset fb616635b18f [foo-bar] | ||||
4:bbf52b87b370 Added tag foo-bar for changeset a50aae922707 [foo+bar] | ||||
5:ff42fde8edbb Added tag foo+bar for changeset bbf52b87b370 [1.2] | ||||
6:db72e24fe069 Added tag 1.2 for changeset ff42fde8edbb [release_4.1(candidate1)] | ||||
7:b29b25d7d687 Added tag release_4.1(candidate1) for changeset db72e24fe069 [release_4.1(arch=x86,arm)] | ||||
8:6b2e2d4ea455 Added tag release_4.1(arch=x86,arm) for changeset b29b25d7d687 [secret(team=foo,project=bar)] | ||||
9:269192bf8fc3 Added tag secret(team=foo,project=bar) for changeset 6b2e2d4ea455 [my little version] | ||||
$ hg log -r '::my little version' | ||||
hg: parse error at 5: invalid token | ||||
(::my little version | ||||
^ here) | ||||
[255] | ||||