Source code for geomodels.tests
# -*- coding: utf-8 -*-
import os
import sys
import locale
import platform
import unittest
def print_versions():
"""Print platform information and library version."""
from .. import lib_version_str, __version__ # avoid circular imports
print('geomodels version: %s' % __version__)
print('GeographicLib version: %s' % lib_version_str())
print('Python version: %s' % platform.python_version())
print('Platform: %s' % platform.platform())
print('Byte-ordering: %s' % sys.byteorder)
print('Default encoding: %s' % sys.getdefaultencoding())
print('Default FS encoding: %s' % sys.getfilesystemencoding())
print('Default locale: (%s, %s)' % locale.getdefaultlocale())
print()
sys.stdout.flush()
def suite():
"""Return the test suite for the geomodels package."""
loader = unittest.TestLoader()
return loader.discover(start_dir=os.path.dirname(__file__))
[docs]def test(verbosity: int = 1, failfast: bool = False):
"""Run the test suite for the geomodels package.
:param int verbosity:
verbosity level (higher is more verbose).
Default: 1.
:param bool failfast:
stop the test run on the first error or failure.
Default: False.
"""
print_versions()
runner = unittest.TextTestRunner(verbosity=verbosity, failfast=failfast)
result = runner.run(suite())
return os.EX_OK if result.wasSuccessful() else 1