view tests/test-lrucachedict.py.out @ 21815:a4b67bf1f0a5 stable

match: make glob '**/' match the empty string Previously, a glob pattern of the form 'foo/**/bar' would match 'foo/a/bar' but not 'foo/bar'. That was because the '**' in 'foo/**/bar' would be translated to '.*', making the final regex pattern 'foo/.*/bar'. That pattern doesn't match the string 'foo/bar'. This is a bug because the '**/' glob matches the empty string in standard Unix shells like bash and zsh. Fix that by making the ending '/' optional if an empty string can be matched.
author Siddharth Agarwal <sid0@fb.com>
date Wed, 25 Jun 2014 14:50:48 -0700
parents 887ffa22fd0d
children 45d996a566d7
line wrap: on
line source

'a' in d: True
d['a']: va
'b' in d: True
d['b']: vb
'c' in d: True
d['c']: vc
'd' in d: True
d['d']: vd
'a' in d: False
'b' in d: True
d['b']: vb
'c' in d: True
d['c']: vc
'd' in d: True
d['d']: vd
'e' in d: True
d['e']: ve
'b' in d: True
d['b']: vb2
'c' in d: True
d['c']: vc2
'd' in d: True
d['d']: vd
'e' in d: False
'f' in d: True
d['f']: vf
'b' in d: False
'c' in d: False
'd' in d: False
'e' in d: False
'f' in d: False