Skip to content
Snippets Groups Projects
test_all_formats.py 977 B
Newer Older
  • Learn to ignore specific revisions
  • import unittest
    import importlib
    import pkgutil
    import tempfile
    
    
    class TestAllFormats(unittest.TestCase):
        def test_load_all_modules(self):
            """Make sure that every format module has been loaded at least once.
            Otherwise, the code coverage will not know about the file."""
            package = importlib.import_module("formats")
            modules = [module.name for module in pkgutil.iter_modules(package.__path__)]
            for module in modules:
                format_check_module = importlib.import_module("formats." + module)
                with tempfile.NamedTemporaryFile(delete=True) as temp_file:
                    resource = {}
                    resource["url"] = "https://test.invalid/data"
                    try:
                        format_check_module.is_valid(resource, temp_file)
                    except Exception as e:
                        print(f"Module for format {module} failed.")
                        raise (e)
    
    
    if __name__ == "__main__":
        unittest.main()