You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
34 lines
550 B
34 lines
550 B
# Test overflow in ure.compile output code.
|
|
|
|
try:
|
|
import ure as re
|
|
except ImportError:
|
|
print("SKIP")
|
|
raise SystemExit
|
|
|
|
|
|
def test_re(r):
|
|
try:
|
|
re.compile(r)
|
|
except:
|
|
print("Error")
|
|
|
|
|
|
# too many chars in []
|
|
test_re("[" + "a" * 256 + "]")
|
|
|
|
# too many groups
|
|
test_re("(a)" * 256)
|
|
|
|
# jump too big for ?
|
|
test_re("(" + "a" * 62 + ")?")
|
|
|
|
# jump too big for *
|
|
test_re("(" + "a" * 60 + ".)*")
|
|
test_re("(" + "a" * 60 + "..)*")
|
|
|
|
# jump too big for +
|
|
test_re("(" + "a" * 62 + ")+")
|
|
|
|
# jump too big for |
|
|
test_re("b" * 63 + "|a")
|
|
|