Mercurial > hg
comparison tests/test-doctest.py @ 31438:82350f7fa56c
tests: allow running doctests selectively on Python 3
Currently most doctests fail on Python 3, but I want to add some.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Wed, 08 Mar 2017 22:13:32 +0900 |
parents | 0b8356705de6 |
children | b70407bd84d5 |
comparison
equal
deleted
inserted
replaced
31437:084050d76e4f | 31438:82350f7fa56c |
---|---|
3 from __future__ import absolute_import | 3 from __future__ import absolute_import |
4 | 4 |
5 import doctest | 5 import doctest |
6 import os | 6 import os |
7 import sys | 7 import sys |
8 | |
9 ispy3 = (sys.version_info[0] >= 3) | |
10 | |
8 if 'TERM' in os.environ: | 11 if 'TERM' in os.environ: |
9 del os.environ['TERM'] | 12 del os.environ['TERM'] |
10 | 13 |
11 def testmod(name, optionflags=0, testtarget=None): | 14 # TODO: migrate doctests to py3 and enable them on both versions |
15 def testmod(name, optionflags=0, testtarget=None, py2=True, py3=False): | |
16 if not (not ispy3 and py2 or ispy3 and py3): | |
17 return | |
12 __import__(name) | 18 __import__(name) |
13 mod = sys.modules[name] | 19 mod = sys.modules[name] |
14 if testtarget is not None: | 20 if testtarget is not None: |
15 mod = getattr(mod, testtarget) | 21 mod = getattr(mod, testtarget) |
16 doctest.testmod(mod, optionflags=optionflags) | 22 doctest.testmod(mod, optionflags=optionflags) |