mirror of
https://github.com/facebook/sapling.git
synced 2024-10-11 17:27:53 +03:00
2bc65bd9db
Summary: The current code checks if the filter error reports a rev number, and if it does tries to convert it to a node. If the 'number' is actually just a short form of a hash that happens to be all digits, then it may be a number greater than the size of the changelog, so we need to not attempt to access it in the changelog, otherwise we get an IndexError. Test Plan: Added a test, it failed before with a weird error Reviewers: #mercurial, kulshrax Reviewed By: kulshrax Subscribers: mjpieters Differential Revision: https://phabricator.intern.facebook.com/D4613988 Signature: t1:4613988:1488027938:4f5ffcb07aeecbaf59cad20fb3a592dd92ed2beb
51 lines
1.2 KiB
Perl
51 lines
1.2 KiB
Perl
$ extpath=`dirname $TESTDIR`
|
|
$ cp $extpath/hgext3rd/hiddenerror.py $TESTTMP
|
|
$ cat >> $HGRCPATH << EOF
|
|
> [extensions]
|
|
> hiddenerror=$TESTTMP/hiddenerror.py
|
|
> [experimental]
|
|
> evolution=all
|
|
> EOF
|
|
|
|
Create hidden changeset.
|
|
$ hg init repo && cd repo
|
|
$ hg debugbuilddag +1
|
|
$ hg debugobsolete 1ea73414a91b0920940797d8fc6a11e447f8ea1e
|
|
|
|
Test default error message.
|
|
$ hg log -r 0
|
|
abort: hidden changeset 1ea73414a91b!
|
|
[255]
|
|
|
|
Test custom error message without hash.
|
|
$ cat >> $HGRCPATH << EOF
|
|
> [hiddenerror]
|
|
> message = message without hash
|
|
> hint = hint without hash
|
|
> EOF
|
|
$ hg log -r 0
|
|
abort: message without hash!
|
|
(hint without hash)
|
|
[255]
|
|
|
|
Test custom error message with hash.
|
|
$ cat >> $HGRCPATH << EOF
|
|
> [hiddenerror]
|
|
> message = message with hash {0}
|
|
> hint = hint with hash {0}
|
|
> EOF
|
|
$ hg log -r 0
|
|
abort: message with hash 1ea73414a91b!
|
|
(hint with hash 1ea73414a91b)
|
|
[255]
|
|
|
|
Test accessing a rev beyond the end of the repo
|
|
$ hg log -r 1
|
|
abort: hidden revision '1'!
|
|
(use --hidden to access hidden revisions)
|
|
[255]
|
|
|
|
Test that basic operations like `status` don't throw an exception due
|
|
to the wrapped context constructor.
|
|
$ hg status
|