Sybren A. Stüvel b48978f067 Moved from Pipenv to Poetry
All the Blender Institute Python webprojects are moving to Poetry; it works
better than Pipenv in various regards.
2019-06-07 12:49:59 +02:00

33 lines
1.0 KiB
Python

import pathlib
import sys
import unittest
import mypy.api
import blender_asset_tracer
class MypyRunnerTest(unittest.TestCase):
def test_run_mypy(self):
# This test doesn't work with Tox, it raises an AssertionError:
# /path/to/blender-asset-tracer/.tox/py37/lib/python3.7/site-packages is in the PYTHONPATH.
# Please change directory so it is not.
for path in sys.path:
if '/.tox/' in path and path.endswith('/site-packages'):
self.skipTest("Mypy doesn't like Tox")
path = pathlib.Path(blender_asset_tracer.__file__).parent
result = mypy.api.run(['--incremental', '--ignore-missing-imports', str(path)])
stdout, stderr, status = result
messages = []
if stderr:
messages.append(stderr)
if stdout:
messages.append(stdout)
if status:
messages.append('Mypy failed with status %d' % status)
if messages:
self.fail('\n'.join(['Mypy errors:'] + messages))