[oi-dev] SUnit and gmake test on OpenIndiana

stes@PANDORA.BE stes at telenet.be
Wed Nov 2 17:21:47 UTC 2022


----- Op 1 nov 2022 om 19:37 schreef Tim Mooney via oi-dev oi-dev at openindiana.org:

> That's atypical, and not really desirable behavior.

OK, then at least we seem to agree here that the oi-userland "design philosophy" is,
that the tests should be ran from BUILD_DIR.

That is, the idea seems to be that after 'gmake build' and *before* copying to the prototype area,
the tests are supposed to be ran from the software that is still in the build directory, before it is copied to the prototype directories (with gmake install).

The way I was looking at it I thought it was more logical to run it from the prototype area,
but that is clarified now, and it is just a convention.

> Is there an environment variable that can be overridden during the test,
> to point squeak at the directory/directories that contain the
> *uninstalled* plugins?

Yes.  I was already using SQUEAK_PLUGINS to point to the prototype area.

Now that you have confirmed that the idea is to run the tests from BUILD_DIR,
what I just did was:

 SQUEAK_PLUGINS=$BUILD_DIR/plugin1:$BUILD_DIR/plugin2:$BUILD_DIR/plugin3: ....

fortunately SQUEAK_PLUGINS accepts a : separated path of directories like LD_LIBRARY_PATH.

> Requiring that something be "installed" (even though in this case it's
> being copied into a staging area for packaging) before it can be tested
> is backwards.  The vast majority of open source software does not do that,
> and OI's targets are set up to assume the more common behavior of being
> able to test before anything has been installed.

So using that solution to set SQUEAK_PLUGINS to point to the various plugin directories in the build area, it works.

I am just trying to understand what the "design philosophy" of gmake test is for OpenIndiana.

With the solution to point SQUEAK_PLUGINS to the various plugin directories in the build directory, like that, I can run Smallltalk from the BUILD_DIR before it is fully 'installed' in the prototype area.

Please note that SUnit the testing framework are thousands of tests, and it is also a framework that is extensible.

  http://sunit.sourceforge.net

Most of the SUnit tests are higher level application level tests.

So for example if additional plugins or applications under Smalltalk are loaded, the SUnit framework changes and gets extended with additional tests.

Anyway, I had been hoping that the "gmake test" could be interfaced to "SUnit".

And indeed this seems to 'kind of work'.

Thanks anyway for clarifying how "gmake build" "gmake test" and "gmake install" relate.
David Stes



More information about the oi-dev mailing list