oscar-system / GAP_pkg

Julia wrapper packages for GAP packages
MIT License
0 stars 0 forks source link

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

Open fingolfin opened 1 year ago

fingolfin commented 1 year ago

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: