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

Make GAP_pkg_FOOBAR/test/runttests.jl files do something useful #8

Open
fingolfin opened this issue Nov 29, 2022 · 0 comments
Open

Comments

@fingolfin
Copy link
Member

Naively we could simply invoke GAP.Globals.TestPackage("FOOBAR"). However, in the current model that exits GAP (and hence OSCAR / Julia), which we don't want...

In the short term, we could hack TestDirectory to handle exitGAP := true differently... But most GAP packages call FORCE_QUIT_GAP(1); after their TestDirectory call...

Short term solution: temporarily replace the GAP functions QuitGap (called by TestDirectory) and FORCE_QUIT_GAP with our own, which just record the exit code set by GAP, i.e., GapExitCode(), to determine the test outcome

We could add a helper function doing all that to GAP.jl. It ain't pretty, but it should work for the majority of packages

Long term:

  • get GAP packages to drop those FORCE_QUIT_GAP calls
  • add a dedicated (and documented) interface in GAP to indicate the test result
  • modify TestDirectory to use that, and/or add a sanctioned way to override the exitGAP option... and/or add a better named alternative to exitGAP (however, most GAP packages will want to stay compatible with older GAP versions, switching to such a new option would be a hassle for them)
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