VOGONS


First post, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

In my quest to get the mt32emu library approved by package managers I hit a wall with brew for macOS.
They switched their system to test *every* package and therefore I couldn't get them to accept my pull request for a mt32emu library "formula" (that's what they call their package informations):
https://github.com/Homebrew/homebrew-core/pull/72618

I was angry and disappointed at first because I wanted it and they didn't let me have it 😀
Seriously I was a bit angry because I struggled to see the point, especially with some libraries in their formulas having no test whatsoever, or some libs have totally useless tests (e.g. SDL2, which test consists of running its configure script sdl2-config which has no use in testing the actual lib). I needed some hours and I *do* understand the approach and if they do it right for every package it is probably a good way to make their packages useful.

However... I'm still not able to get it accepted. I have no idea how to start a test program to have something going on with the lib.

@Sergm, could you help me out? an example is maybe the test in the formula for libvorbis https://github.com/Homebrew/homebrew-core/blo … la/libvorbis.rb
If you can't or won't, that's ok, it's just nagging on me and I can't let it go 😀

Windows 3.1x guide for DOSBox
60 seconds guide to DOSBox
DOSBox SVN snapshot for macOS (10.4-11.x ppc/intel 32/64bit) notarized for gatekeeper

Reply 1 of 2, by sergm

User metadata
Rank Oldbie
Rank
Oldbie

Yes, obviously every good library code needs testing, and autotests is a great answer to check regressions continuously (provided the tests cover enough corner cases of the library). There is a problem here: nearly every usage of the library involves adding the ROMs, except some pieces of support code. Indeed, we may create a ton of semi-useless tests, e.g. with CUnit and claim we have tests, but I doubt it is a good answer. Perhaps, some parts of the core functionality can be successfully tested with "mock ROMs", however creating these isn't straightforward. Hence, no autotests for mt32emu so far, I'm quite satisfied with end-to-end testing I have now. From start, we planned to use mt32emu-smf2wav to produce a set of waveforms from reference MIDI files and compare them with the reference samples.

But I see no problem with the brew crew insisting on autotests for every formula. AFAIK, they are fine with supporting custom taps, so we might create one on our own. It would contain not only the library but perhaps, mt32emu-smf2wav and mt32emu-qt casks, wdyt?

Reply 2 of 2, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

Yeah, as I wrote, I needed a bit to "get it".

Yes, it's probably easy enough to get a tap for all three going.

Windows 3.1x guide for DOSBox
60 seconds guide to DOSBox
DOSBox SVN snapshot for macOS (10.4-11.x ppc/intel 32/64bit) notarized for gatekeeper