diff options
Diffstat (limited to 'tests/test_examples.py')
-rw-r--r-- | tests/test_examples.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/test_examples.py b/tests/test_examples.py new file mode 100644 index 0000000..f0799f9 --- /dev/null +++ b/tests/test_examples.py @@ -0,0 +1,32 @@ +"""Test example scripts.""" + +from __future__ import print_function + +import os +import subprocess +import sys + +import pytest + +from tests import PROJECT_ROOT + + +@pytest.mark.parametrize('filename', map('example{0}.py'.format, (1, 2, 3))) +def test(filename): + """Test with subprocess. + + :param str filename: Example script filename to run. + """ + command = [sys.executable, str(PROJECT_ROOT.join(filename))] + env = dict(os.environ, PYTHONIOENCODING='utf-8') + + # Run. + proc = subprocess.Popen(command, env=env, stderr=subprocess.STDOUT, stdout=subprocess.PIPE) + output = proc.communicate()[0] + + # Verify. + try: + assert proc.poll() == 0 + except AssertionError: + print(output) + raise |