summaryrefslogtreecommitdiff
path: root/Tools/pybench/With.py
diff options
context:
space:
mode:
authorSerhiy Storchaka <storchaka@gmail.com>2017-02-04 22:57:44 +0200
committerSerhiy Storchaka <storchaka@gmail.com>2017-02-04 22:57:44 +0200
commit44a28ecbe2c09fe5ec4959c254fdfe5b6a9fe322 (patch)
tree007442e524d9584fe16f0d80ad2b8933809f3b1b /Tools/pybench/With.py
parent2296b978597ce62ec2185b78a43811610af2c0ea (diff)
parentefe8c92c7a269af2f9ded960735e74d62d791330 (diff)
downloadcpython-44a28ecbe2c09fe5ec4959c254fdfe5b6a9fe322.tar.gz
Issue #29444: Fixed out-of-bounds buffer access in the group() method of
the match object. Based on patch by WGH.
Diffstat (limited to 'Tools/pybench/With.py')
-rw-r--r--Tools/pybench/With.py189
1 files changed, 0 insertions, 189 deletions
diff --git a/Tools/pybench/With.py b/Tools/pybench/With.py
deleted file mode 100644
index 30cd3c2c8a..0000000000
--- a/Tools/pybench/With.py
+++ /dev/null
@@ -1,189 +0,0 @@
-from pybench import Test
-
-class WithFinally(Test):
-
- version = 2.0
- operations = 20
- rounds = 80000
-
- class ContextManager(object):
- def __enter__(self):
- pass
- def __exit__(self, exc, val, tb):
- pass
-
- def test(self):
-
- cm = self.ContextManager()
-
- for i in range(self.rounds):
- with cm: pass
- with cm: pass
- with cm: pass
- with cm: pass
- with cm: pass
- with cm: pass
- with cm: pass
- with cm: pass
- with cm: pass
- with cm: pass
- with cm: pass
- with cm: pass
- with cm: pass
- with cm: pass
- with cm: pass
- with cm: pass
- with cm: pass
- with cm: pass
- with cm: pass
- with cm: pass
-
- def calibrate(self):
-
- cm = self.ContextManager()
-
- for i in range(self.rounds):
- pass
-
-
-class TryFinally(Test):
-
- version = 2.0
- operations = 20
- rounds = 80000
-
- class ContextManager(object):
- def __enter__(self):
- pass
- def __exit__(self):
- # "Context manager" objects used just for their cleanup
- # actions in finally blocks usually don't have parameters.
- pass
-
- def test(self):
-
- cm = self.ContextManager()
-
- for i in range(self.rounds):
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- cm.__enter__()
- try: pass
- finally: cm.__exit__()
-
- def calibrate(self):
-
- cm = self.ContextManager()
-
- for i in range(self.rounds):
- pass
-
-
-class WithRaiseExcept(Test):
-
- version = 2.0
- operations = 2 + 3 + 3
- rounds = 100000
-
- class BlockExceptions(object):
- def __enter__(self):
- pass
- def __exit__(self, exc, val, tb):
- return True
-
- def test(self):
-
- error = ValueError
- be = self.BlockExceptions()
-
- for i in range(self.rounds):
- with be: raise error
- with be: raise error
- with be: raise error("something")
- with be: raise error("something")
- with be: raise error("something")
- with be: raise error("something")
- with be: raise error("something")
- with be: raise error("something")
-
- def calibrate(self):
-
- error = ValueError
- be = self.BlockExceptions()
-
- for i in range(self.rounds):
- pass