tests/test-revset.t
changeset 32913 3292c0df64f7
parent 32885 8e02829bec61
child 32914 577759ef2ed2
equal deleted inserted replaced
32912:c808507cfbf0 32913:3292c0df64f7
  2978       define)
  2978       define)
  2979     define)
  2979     define)
  2980   hg: parse error: missing argument
  2980   hg: parse error: missing argument
  2981   [255]
  2981   [255]
  2982 
  2982 
       
  2983 optimization to only() works only if ancestors() takes only one argument
       
  2984 
       
  2985   $ hg debugrevspec -p optimized 'ancestors(6) - ancestors(4, 1)'
       
  2986   * optimized:
       
  2987   (difference
       
  2988     (func
       
  2989       ('symbol', 'ancestors')
       
  2990       ('symbol', '6')
       
  2991       define)
       
  2992     (func
       
  2993       ('symbol', 'ancestors')
       
  2994       (list
       
  2995         ('symbol', '4')
       
  2996         ('symbol', '1'))
       
  2997       any)
       
  2998     define)
       
  2999   hg: parse error: can't use a list in this context
       
  3000   (see hg help "revsets.x or y")
       
  3001   [255]
       
  3002   $ hg debugrevspec -p optimized 'ancestors(6, 1) - ancestors(4)'
       
  3003   * optimized:
       
  3004   (difference
       
  3005     (func
       
  3006       ('symbol', 'ancestors')
       
  3007       (list
       
  3008         ('symbol', '6')
       
  3009         ('symbol', '1'))
       
  3010       define)
       
  3011     (func
       
  3012       ('symbol', 'ancestors')
       
  3013       ('symbol', '4')
       
  3014       any)
       
  3015     define)
       
  3016   hg: parse error: can't use a list in this context
       
  3017   (see hg help "revsets.x or y")
       
  3018   [255]
       
  3019 
       
  3020 optimization disabled if keyword arguments passed (because we're too lazy
       
  3021 to support it)
       
  3022 
       
  3023   $ hg debugrevspec -p optimized 'ancestors(set=6) - ancestors(set=4)'
       
  3024   * optimized:
       
  3025   (difference
       
  3026     (func
       
  3027       ('symbol', 'ancestors')
       
  3028       (keyvalue
       
  3029         ('symbol', 'set')
       
  3030         ('symbol', '6'))
       
  3031       define)
       
  3032     (func
       
  3033       ('symbol', 'ancestors')
       
  3034       (keyvalue
       
  3035         ('symbol', 'set')
       
  3036         ('symbol', '4'))
       
  3037       any)
       
  3038     define)
       
  3039   hg: parse error: can't use a key-value pair in this context
       
  3040   [255]
       
  3041 
  2983 invalid function call should not be optimized to only()
  3042 invalid function call should not be optimized to only()
  2984 
  3043 
  2985   $ log '"ancestors"(6) and not ancestors(4)'
  3044   $ log '"ancestors"(6) and not ancestors(4)'
  2986   hg: parse error: not a symbol
  3045   hg: parse error: not a symbol
  2987   [255]
  3046   [255]