Add an option to choose the IO module under test (allows to bench
e.g. the pure Python implementation in _pyio).
diff --git a/Tools/iobench/iobench.py b/Tools/iobench/iobench.py
index 92b4ffa..b3bdd6a 100644
--- a/Tools/iobench/iobench.py
+++ b/Tools/iobench/iobench.py
@@ -427,6 +427,9 @@
action="store", dest="newlines", default='lf',
help="line endings for text tests "
"(one of: {lf (default), cr, crlf, all})")
+ parser.add_option("-m", "--io-module",
+ action="store", dest="io_module", default=None,
+ help="io module to test (default: builtin open())")
options, args = parser.parse_args()
if args:
parser.error("unexpected arguments")
@@ -451,6 +454,9 @@
if options.encoding:
TEXT_ENCODING = options.encoding
+ if options.io_module:
+ globals()['open'] = __import__(options.io_module, {}, {}, ['open']).open
+
prepare_files()
run_all_tests(test_options)