Our tests fail when we run tests from the C:/rootdir, but when we run a test individually, in C:/rootdir/tests/our_module/, it fails with a long error trace below. It is definitely triggered on our line 24 by the import:
from podpac.datalib.terraintiles import TerrainTiles
Error Trace:
platform win32 -- Python 3.7.8, pytest-6.0.2, py-1.9.0, pluggy-0.13.1 --
C:\Users\user\anaconda3\envs\our_module\lib\site-packages\lazy_import\__init__.py:149: in __getattribute__
return type(self)._lazy_import_callables[attr]
E KeyError: '__path__'
During handling of the above exception, another exception occurred:
tests\our_module\test_dcp.py:13: in <module>
???
our_module\dcp.py:24: in <module>
???
C:\Users\user\anaconda3\envs\our_module\lib\site-packages\podpac\__init__.py:44: in <module>
???
C:\Users\user\anaconda3\envs\our_module\lib\site-packages\podpac\core\node.py:23: in <module>
???
C:\Users\user\anaconda3\envs\our_module\lib\site-packages\podpac\core\units.py:37: in <module>
???
C:\Users\user\anaconda3\envs\our_module\lib\site-packages\podpac\core\style.py:9: in <module>
???
<frozen importlib._bootstrap>:983: in _find_and_load
???
<frozen importlib._bootstrap>:959: in _find_and_load_unlocked
???
C:\Users\user\anaconda3\envs\our_module\lib\site-packages\lazy_import\__init__.py:156: in __getattribute__
_load_module(self)
C:\Users\user\anaconda3\envs\our_module\lib\site-packages\lazy_import\__init__.py:510: in _load_module
reload_module(module)
C:\Users\user\anaconda3\envs\our_module\lib\importlib\__init__.py:169: in reload
_bootstrap._exec(spec, module)
C:\Users\user\anaconda3\envs\our_module\lib\site-packages\matplotlib\__init__.py:912: in <module>
???
C:\Users\user\anaconda3\envs\our_module\lib\site-packages\matplotlib\__init__.py:602: in matplotlib_fname
???
C:\Users\user\anaconda3\envs\our_module\lib\site-packages\matplotlib\__init__.py:599: in gen_candidates
???
C:\Users\user\anaconda3\envs\our_module\lib\site-packages\matplotlib\__init__.py:239: in wrapper
???
C:\Users\user\anaconda3\envs\our_module\lib\site-packages\matplotlib\__init__.py:502: in get_configdir
???
C:\Users\user\anaconda3\envs\our_module\lib\site-packages\matplotlib\__init__.py:444: in _get_xdg_config_dir
???
C:\Users\user\anaconda3\envs\our_module\lib\pathlib.py:1088: in home
return cls(cls()._flavour.gethomedir(None))
C:\Users\user\anaconda3\envs\our_module\lib\pathlib.py:267: in gethomedir
raise RuntimeError("Can't determine home directory")
E RuntimeError: Can't determine home directory
I'm stumped on what to do. I've tried adding C:/rootdir/tests/out_module/ to the sys.path, but it fails exactly the same. I am using other packages that might use matplotlib
like numpy
/pandas
/sklearn
so I'm not sure if this might be causing import problems - I am importing podpac after everything else because of a weird import error that occurs when it's imported before certain modules. Something with unicode
conflicting declarations.