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
added tests for issues and some generic algebra tests #23
Conversation
Codecov Report
@@ Coverage Diff @@
## master #23 +/- ##
===========================================
+ Coverage 41.94% 57.45% +15.51%
===========================================
Files 7 7
Lines 968 1154 +186
===========================================
+ Hits 406 663 +257
+ Misses 562 491 -71
Continue to review full report at Codecov.
|
@karlwessel Just commented on the code a little bit. Your tests look well organized and you are very observant to raise the issues. 👍 I was also thinking about porting the tests in https://github.com/pygae/GAlgebra.jl/blob/master/test/runtests.jl to Grassmann, including sanity checks and many Geometric Algebra identities. More tests are planned, like Geometric Calculus and check the properties of other algebra structures (groups, ideals etc. ) that GA can generate. P.S. GAlgebra.jl is a symbolic GA library in Julia (aimed to be more than just a wrapper for GAlgebra), it would be nice that it also comes in handy for you. 😄 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@karlwessel are there any additional tests planned, or not? p.s. @utensil |
Not at the moment. I write the tests whenever something in my own code doesn't work as expected. Implementing tests for the properties of GA helps me by telling me that I didn't understand some property correctly yet or by telling me that it isn't implemented correctly yet. There are also the pure coverage related tests that one should implement. Like my tests for the So there might be more tests coming but not for this PR I would say. |
I added two files with more tests.
issuestests.jl
contains tests cases that cover any issues reported on github (including currently open ones). These should assure that they are not reintroduced in a later commit. A good practice probably would be to add a tests case for any issue to that file before fixing that issue.generictests.jl
contains a collection of tests that check mathematical properties which should hold for any geometric algebra. The collection can be executed on different signatures over different fields.Although those test improve the coverage somewhat they are not especially written to do that. For that I would rather write another file with tests which only make sure that as much lines as possible are covered, without caring to much about the output or the sensibility of the test. These would at least assure that there are no syntax errors.