Mercurial > hg
comparison tests/test-revset.t @ 48116:5ced12cfa41b
errors: raise InputError on bad revset to revrange() iff provided by the user
Most callers of `scmutil.revrange()` pass in a revset provided by the
user. If there are problems resolving that, it should result in an
`InputError` and exit code 10 (when using detailed exit
codes). However, there are also some callers that pass in revsets not
provided by the user. `InputError` is not appropriate in those
cases. This patch therefore introduces a wrapper around
`scmutil.revrange()` that simply converts the exception type. I put it
in `logcmdutil.py` since that seems to be the lowest-level module in
the (poorly defined) UI layer.
Differential Revision: https://phab.mercurial-scm.org/D11560
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Tue, 28 Sep 2021 08:47:11 -0700 |
parents | 56d441256e82 |
children | 8c4881c07f57 |
comparison
equal
deleted
inserted
replaced
48115:b067d22dc6ad | 48116:5ced12cfa41b |
---|---|
405 $ log 'date()' | 405 $ log 'date()' |
406 hg: parse error: date requires a string | 406 hg: parse error: date requires a string |
407 [10] | 407 [10] |
408 $ log 'date' | 408 $ log 'date' |
409 abort: unknown revision 'date' | 409 abort: unknown revision 'date' |
410 [255] | 410 [10] |
411 $ log 'date(' | 411 $ log 'date(' |
412 hg: parse error at 5: not a prefix: end | 412 hg: parse error at 5: not a prefix: end |
413 (date( | 413 (date( |
414 ^ here) | 414 ^ here) |
415 [10] | 415 [10] |
419 $ log 'date(tip)' | 419 $ log 'date(tip)' |
420 hg: parse error: invalid date: 'tip' | 420 hg: parse error: invalid date: 'tip' |
421 [10] | 421 [10] |
422 $ log '0:date' | 422 $ log '0:date' |
423 abort: unknown revision 'date' | 423 abort: unknown revision 'date' |
424 [255] | 424 [10] |
425 $ log '::"date"' | 425 $ log '::"date"' |
426 abort: unknown revision 'date' | 426 abort: unknown revision 'date' |
427 [255] | 427 [10] |
428 $ hg book date -r 4 | 428 $ hg book date -r 4 |
429 $ log '0:date' | 429 $ log '0:date' |
430 0 | 430 0 |
431 1 | 431 1 |
432 2 | 432 2 |
3065 2 | 3065 2 |
3066 1 | 3066 1 |
3067 0 | 3067 0 |
3068 $ log 'expectsize(0:1, 1)' | 3068 $ log 'expectsize(0:1, 1)' |
3069 abort: revset size mismatch. expected 1, got 2 | 3069 abort: revset size mismatch. expected 1, got 2 |
3070 [255] | 3070 [10] |
3071 $ log 'expectsize(0:4, -1)' | 3071 $ log 'expectsize(0:4, -1)' |
3072 hg: parse error: negative size | 3072 hg: parse error: negative size |
3073 [10] | 3073 [10] |
3074 $ log 'expectsize(0:2, 2:4)' | 3074 $ log 'expectsize(0:2, 2:4)' |
3075 0 | 3075 0 |
3076 1 | 3076 1 |
3077 2 | 3077 2 |
3078 $ log 'expectsize(0:1, 3:5)' | 3078 $ log 'expectsize(0:1, 3:5)' |
3079 abort: revset size mismatch. expected between 3 and 5, got 2 | 3079 abort: revset size mismatch. expected between 3 and 5, got 2 |
3080 [255] | 3080 [10] |
3081 $ log 'expectsize(0:1, -1:2)' | 3081 $ log 'expectsize(0:1, -1:2)' |
3082 hg: parse error: negative size | 3082 hg: parse error: negative size |
3083 [10] | 3083 [10] |
3084 $ log 'expectsize(0:1, 1:-2)' | 3084 $ log 'expectsize(0:1, 1:-2)' |
3085 hg: parse error: negative size | 3085 hg: parse error: negative size |
3102 0 | 3102 0 |
3103 1 | 3103 1 |
3104 2 | 3104 2 |
3105 $ log 'expectsize(0:2, 4:)' | 3105 $ log 'expectsize(0:2, 4:)' |
3106 abort: revset size mismatch. expected between 4 and 11, got 3 | 3106 abort: revset size mismatch. expected between 4 and 11, got 3 |
3107 [255] | 3107 [10] |
3108 $ log 'expectsize(0:2, :2)' | 3108 $ log 'expectsize(0:2, :2)' |
3109 abort: revset size mismatch. expected between 0 and 2, got 3 | 3109 abort: revset size mismatch. expected between 0 and 2, got 3 |
3110 [255] | 3110 [10] |
3111 | 3111 |
3112 Test getting list of node from file | 3112 Test getting list of node from file |
3113 | 3113 |
3114 $ hg log -r '0:2' -T '{node}\n' > some.nodes | 3114 $ hg log -r '0:2' -T '{node}\n' > some.nodes |
3115 $ hg log -r 'nodefromfile("some.nodes")' -T '{rev}\n' | 3115 $ hg log -r 'nodefromfile("some.nodes")' -T '{rev}\n' |