Getting close.

On Sun, 10 Feb 2019 05:19:55 +0000, navaneeth.suresh (Navaneeth Suresh) wrote:
> +  $ log 'expectsize(0:2, 2:4)'

Can you test `:max`, `min:`, and `:` (no constraint)?
They shouldn't fail.

> +@predicate('expectsize(set[, size])', safe=True, takeorder=True)
> +def expectrevsetsize(repo, subset, x, order):
> +    """Abort if the revset doesn't expect given size"""
> +    args = getargsdict(x, 'expect', 'set size')
> +    size = args.get('size')
> +    minsize = None
> +    maxsize = None
> +    err = ''
> +    if size is not None:
> +        minsize, maxsize = getintrange(size,
> +                                       _('expectsize requires a size range'
> +                                         ' or a positive integer'),
> +                                       _('size range bounds must be 
> integers'))
> +        if minsize < 0 or maxsize < 0:
> +            raise error.ParseError(_('negative size'))
> +    if size is None or 'set' not in args:
> +        raise error.ParseError(_('invalid set of arguments'))

Nit: `if size is not None` (and the `size` variable itself) can be removed
if we checked the invalid set of arguments first.
_______________________________________________
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel

Reply via email to