Split up core-tests.m2
- Dominant language
- Macaulay2
- Stars
- 435
- Forks
- 297
- Avg merge
- 4d 20h
- Merged PRs (30d)
- 11
Description
This very large test file was created from all the former `Macaulay2Doc` tests - see #1709. There's a TODO at the top of the file that should probably be an issue:
https://github.com/Macaulay2/M2/blob/a9199f466dafb7c4f830713ae3ff6a9bb350bc26/M2/Macaulay2/tests/normal/core-tests.m2#L1-L2
Currently, it's not so bad running this test on a decent system. On my home desktop, `time M2 < core-tests.m2` gives:
```
real 0m7.898s
user 0m16.572s
sys 0m0.490s
```
But on my Raspberry Pi, it's much slower:
```
real 1m27.355s
user 3m4.848s
sys 0m2.477s
```
And it was slow enough to get killed on a recent [armel build](https://buildd.debian.org/status/fetch.php?pkg=macaulay2&arch=armel&ver=1.18%2Bds-1%7Eexp1&stamp=1625748572&raw=0) of the Debian package:
```
testing: core-tests.m2
-- #spairs done = 25
-- ncalls = 0
-- nloop = 0
-- nsaved = 0
--
ii1238 : G = gb(I, DegreeLimit=>4); -- this one works
-- [gb]{4}(41)mmmmmmmmmmmmmmoCommand terminated by signal 9
89.58user 0.36system 1:22.25elapsed 109%CPU (0avgtext+0avgdata 113376maxresident)k
0inputs+0outputs (0major+19667minor)pagefaults 0swaps
core-tests.errors:0: error output left here for the errors above:
core-tests.m2:1608:--status: somebody should fix this! [dan]
core-tests.m2:1880:--status: this is a strange one
core-tests.m2:1881:--status: it's a gb computation that seems to run out of memory far too soon
core-tests.m2:1882:--status: Mike?
make[5]: *** [../Makefile.test:67: core-tests.out] Error 137
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the TODO at the top of M2/Macaulay2/tests/normal/core-tests.m2, especially lines 1–2, then review how the large test file is organized. Compare the full test command’s behavior on slower systems, including the reported armel failure. Done means the tests are split into manageable files without losing coverage or the existing test behavior.
Written by the indexing model from the issue text.
Assessment
- Domain
- performance, testing-qa
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100