GUDHI_CHECK overhaul
mglisse opened this issue · 0 comments
mglisse commented
We currently use GUDHI_CHECK for any kind of assertion in Gudhi. But not all checks are the same.
- Some tests are about validating the user input and can easily fail
- Some check the internal consistency of Gudhi datastructures and can never fail (unless we have a bug in Gudhi)
- Some tests are almost free, while others change the complexity of the algorithm
- We may also want to handle some runtime warnings in a similar way?
- etc
We may not want to enable/disable all the tests under the same conditions, and we may not want the same behavior in case of failure. It may be good to define a few categories of checks and use a different macro for them. One use case to keep in mind is that for a utility program, aborting is fine, while for the python plugin, we really want an exception to avoid killing the python interpreter.
This is a TODO item that requires discussion.