Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New uniform approach to testing #75

Open
heltonmc opened this issue Dec 8, 2022 · 0 comments
Open

New uniform approach to testing #75

heltonmc opened this issue Dec 8, 2022 · 0 comments

Comments

@heltonmc
Copy link
Member

heltonmc commented Dec 8, 2022

The test structure is fairly comprehensive but we are starting to run into a few things as the library grows. The test files are becoming a conglomeration of new functions but are not standardized. Additionally, we are testing against the SpecialFunctions.jl library which has its own errors and could eventually be replaced with new implementations. So as we add functions that are more accurate we can't test them to strict error tolerances. There are some potential alternatives.

  1. Switch all tests to ArbNumerics.jl so that the tests are accurate to all digits. Though this has the drawback of being very slow which I don't think is a good idea to slow down CI so much.
  2. Generate a table of values that can be stored in the test folder to be loaded and compared against. This should be much faster as then we are only evaluating the functions in Bessels.jl. I would imagine loading a big table of values would not be too slow for each function.

There are I'm sure different approaches that I would be happy to hear. Though, I am in general of having a pretty complete testing approach in CI as there are so many functions that depend on each other it would be hard to locally test everything during each PR. Ideally, this will help any new implementation or performance improvement be checked against the strictest error tolerance of the existing function...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant