sapling/eden/scm/tests/test-revset-dirstate-parents.t
Jun Wu 49a25c9525 smartset: replace spanset with idset
Summary:
Replace the Python spanset with the Rust-backed idset.
The idset can represent multiple ranges and works better with Rust code.

The `idset` fast paths do not preserve order for the `or` operation, as
demonstrated in the test changes.

Reviewed By: DurhamG, kulshrax

Differential Revision: D22519584

fbshipit-source-id: 5d976a937e372a87e7f087d862e4b56d673f81d6
2020-07-30 20:00:41 -07:00

74 lines
951 B
Perl

#chg-compatible
#testcases treestate-on treestate-off
#if treestate-on
$ setconfig format.dirstate=2
#else
$ setconfig format.dirstate=1
#endif
$ HGENCODING=utf-8
$ export HGENCODING
$ try() {
> hg debugrevspec --debug $@
> }
$ log() {
> hg log --template '{rev}\n' -r "$1"
> }
$ hg init repo
$ cd repo
$ try 'p1()'
(func
(symbol 'p1')
None)
* set:
<baseset []>
$ try 'p2()'
(func
(symbol 'p2')
None)
* set:
<baseset []>
$ try 'parents()'
(func
(symbol 'parents')
None)
* set:
<baseset- []>
null revision
$ log 'p1()'
$ log 'p2()'
$ log 'parents()'
working dir with a single parent
$ echo a > a
$ hg ci -Aqm0
$ log 'p1()'
0
$ log 'p2()'
$ log 'parents()'
0
merge in progress
$ echo b > b
$ hg ci -Aqm1
$ hg up -q 0
$ echo c > c
$ hg ci -Aqm2
$ hg merge -q
$ log 'p1()'
2
$ log 'p2()'
1
$ log 'parents()'
1
2
$ cd ..