return -1 for undefined groups (as implemented in 1.5.2) instead of

None (as documented) from start/end/span.  closes bug #113254
This commit is contained in:
Fredrik Lundh 2000-09-02 16:36:57 +00:00
parent ff07f8c7ea
commit 510c97ba2f
2 changed files with 10 additions and 17 deletions

View file

@ -46,7 +46,7 @@ def test(expression, result, exception=None):
if verbose:
print 'Running tests on character literals'
for i in range(0, 256):
for i in [0, 8, 16, 32, 64, 127, 128, 255]:
test(r"""sre.match("\%03o" % i, chr(i)) != None""", 1)
test(r"""sre.match("\%03o0" % i, chr(i)+"0") != None""", 1)
test(r"""sre.match("\%03o8" % i, chr(i)+"8") != None""", 1)
@ -73,6 +73,11 @@ test(r"""sre.match('x*', 'xxxa').span(0)""", (0, 3))
test(r"""sre.match('x*', 'xxxa').span()""", (0, 3))
test(r"""sre.match('a+', 'xxx')""", None)
# bug 113254
test(r"""sre.match('(a)|(b)', 'b').start(1)""", -1)
test(r"""sre.match('(a)|(b)', 'b').end(1)""", -1)
test(r"""sre.match('(a)|(b)', 'b').span(1)""", (-1, -1))
if verbose:
print 'Running tests on sre.sub'