[PATCH v2] convert /bin/sh tests over to ATF

Jilles Tjoelker jilles at stack.nl
Sun May 11 15:32:07 UTC 2014

On Mon, Apr 21, 2014 at 05:21:22PM -0700, Garrett Cooper wrote:
> On Sun, Mar 9, 2014 at 1:42 PM, Julio Merino <jmmv at freebsd.org> wrote:

> ...

> > The tests need to populate /usr/tests/bin/sh/ with the
> > functional_test.sh driver and all its supporting data files. As I
> > understand it, your driver code assumes that the data files are
> > external (i.e. not bundled into the script itself), so those files
> > must be available from the same location as where the driver lives.
> > Hence you still need to use FILES to ensure the data files get
> > installed into /usr/tests/.

> > ... but maybe I'm missing something from your patch; haven't reviewed
> > it again to double-check this.

>     I've reduced the diff quite a bit. The end result of it can be
> found here: https://github.com/yaneurabeya/freebsd/pull/2 (and it will
> evolve over time if needed because github is additive in pull request
> reviews). FWIW, it might be better to actually review it on github
> instead of using this list as patches attached to any mailing list can
> become stale over time.
>     You can get the diff like so:

> https://github.com/yaneurabeya/freebsd/pull/2.patch

This is OK with me as long as important use cases for me are not broken:

1. Allow running new tests on a potentially broken new sh without
   installing anything. This used to be possible using 'make regress' in
   src/bin/sh/ but this was removed. I now use
     SH=$PWD/obj/sh sh tests/legacy_test.sh
   (I have an obj/ subdirectory to make the built objects more easily
   This should also work on stable/9 although it is acceptable to need a
   few local hacks for that (as is already the case for MK_TESTS and
   src.opts.mk). On head, it should work without local hacks.

2. Allow installing using a read-only /usr/obj (mounted over NFS). This
   means that everything needs to be built during buildworld.
   Installworld should not build anything.
   (I currently have local hacks: Kyuafile.auto is not built so I added
     all: Kyuafile.auto
   to some tests/Makefiles; I guess this should be in <bsd.test.mk>.)

Jilles Tjoelker

More information about the freebsd-testing mailing list