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

MatrixObj: Add type-parametrized tests #4512

Open
ssiccha opened this issue May 27, 2021 · 2 comments
Open

MatrixObj: Add type-parametrized tests #4512

ssiccha opened this issue May 27, 2021 · 2 comments
Assignees
Labels
kind: enhancement Label for issues suggesting enhancements; and for pull requests implementing enhancements release notes: not needed PRs introducing changes that are wholly irrelevant to the release notes topic: tests issues or PRs related to tests

Comments

@ssiccha
Copy link
Contributor

ssiccha commented May 27, 2021

Add test functions which take as argument something like IsGF2MatrixRep (to indicate a specific MatrixObj implementation) plus some other arguments (e.g. a base domain) and then run a bunch of tests to verify that certain APIs are implemented right. E.g. a ZeroMatrix test could ensure that matrices of the right dimension, domain and type are produced.

The file tst/teststandard/arithlst.g might give an idea how such generic tests can look.

Then we can:

  • run these against existing and new implementations
  • fix all issues uncovered this way (by adjusting the implementation, the
    documentation, the tests or several of the above)
  • also add specialized tests for implementations which complement the
    generic ones.
@ssiccha ssiccha added kind: enhancement Label for issues suggesting enhancements; and for pull requests implementing enhancements topic: tests issues or PRs related to tests release notes: not needed PRs introducing changes that are wholly irrelevant to the release notes labels May 27, 2021
@fingolfin
Copy link
Member

Also take a look at tst/testinstall/MatrixObj/testmatobj.g

@fingolfin
Copy link
Member

@AnnaKDS and @wucas are working on this as part of GAP Days Summer 2022

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind: enhancement Label for issues suggesting enhancements; and for pull requests implementing enhancements release notes: not needed PRs introducing changes that are wholly irrelevant to the release notes topic: tests issues or PRs related to tests
Projects
No open projects
Status: No status
Development

No branches or pull requests

4 participants