Closed santisoler closed 2 months ago
I started this PR after @indiauppal and I noticed some of the tests taking too long. After merging #505, tests on CI went from 5mins to ~23mins. I'm aiming to reduce the run times back to around 5min.
I also noticed that the harmonica/_spherical_harmonics/legendre.py
file is not being listed in the coverage report. I've checked locally and we are hitting 100% coverage on that file, but would be nice if we have it in the report too. I think as soon as we start using those functions in public modules, then they'll be included.
What? It wasn't taking that long in the PR was it?
It was, but we didn't notice:
Ah wow! I keep forgetting that Harmonica runs tests without numba compilation. That's something I really don't love but can't think of a way to get the full coverage without it.
Apply decorators to tests for the associated functions to compute the Legendre polynomials so we lower the time it takes to run the tests: mark the ones that test the Schmidt identity (running with high degrees) to require Numba JIT to be enabled, mark the other ones as
use_numba
so they are run with and without Numba JIT. Add low degree versions of the tests using the Schmidt identity to also check coverage with those.