Some tests use
foundation code.
Foundation code is reusable across multiple tests that are themselves
independent of each other. It is intended to be compiled and included
in an environment as part of the compilation process of a test. If the
test is executable, the foundation code must be bound with all other
code for the test prior to execution.
Foundation code is always expected to compile successfully;
it is never expected to be run by itself. Foundation code is not, in
and of itself, a test, and is therefore not characterized by a test class
(see
4.2). One may think of it as providing some
utility definitions and routines to a number of different tests. Names
of foundation units (and therefore names of files containing foundation
code) are distinguished as described in Naming Convention, Section
4.3.