homalg-project / CddInterface

Gap Interface to Cdd
https://homalg-project.github.io/CddInterface
Other
1 stars 5 forks source link

Don't create or mention maketest.g #3

Closed fingolfin closed 5 years ago

fingolfin commented 5 years ago

There seems to be no point in doing this and using extract_examples, and I'd really like to get rid of the whole maketest.g construct in AutoDoc at some point in the (probably distant) future.

But perhaps I am missing something. In that case, I'd like to learn more about whatever I missed. E.g. perhaps the homalg CI setup requires maketest.g and does not yet support tst/testall.g? I'd then argue that this CI setup should be improved ;-).

kamalsaleh commented 5 years ago

I was actually following the structure of NormalizInterface :), so I think NormalizInterface needs to be adjusted as well. I think extracting examples and running gap tst/testall.g is the cleanest way to test; since the tst/ directory can at any time be extended by other tests, that we may not want to include in the documentation. With regards to homalg CI setup, I see that almost all homalg packages use the file maketest.g to perform tests and adjusting them would not take up much time @mohamed-barakat @zickgraf.

fingolfin commented 5 years ago

The latest NormalizInterface from last week already doesn't do that anymore :-). And the old one only used maketest.g because Sebastian snuck that in behind my back ;-) (OK, that's not quite true, but almost ;-)

zickgraf commented 5 years ago

With regards to homalg CI setup, I see that almost all homalg packages use the file maketest.g to perform tests and adjusting them would not take up much time @mohamed-barakat @zickgraf.

I do not think this package is covered by CI. All homalg packages covered by CI just call make ci-test, so the CI does not care if make ci-test uses maketest.g or tst/testall.g.

mohamed-barakat commented 5 years ago

I am now in favor of getting rid of maketest.g in favor of GAP's standard tst/testall.g.

fingolfin commented 5 years ago

Note that strictly speaking, tst/testall.g is not a standard -- the standard is that PackageInfo.g specifies a TestFile, wich can be either a .tst file, or a .g file. Then the TestPackage locates and executes that test.

However, for various historical reasons, the Travis scripts I wrote (see https://github.com/gap-system/pkg-ci-scripts) and which most packages on https://github.com/gap-packages use, actually do hardcode tst/testall.g as a default (although one can override this with the GAP_TESTFILE env var).