ACATS 3.0 User's Guide
5.2.1 ImpDef Customization
There
was no change to Impdef or any of its children from ACATS 2.6 to ACATS
3.0. A version of any of these packages that was tailored for ACATS 2.6
should be valid for ACATS 3.0 unless some implementation characteristics
have changed.
ACATS tests use the entities in ImpDef to control
test execution. Much of the information in ImpDef relates to the timing
of running code; for example, the minimum time required to allow a task
switch may be used by a test as a parameter to a delay statement. The
time to use is obtained as an ImpDef constant.
impdef.a was added as a new feature to ACATS
2.0 suite. It is related to macro.dfs in that it must be customized
with values specific to an implementation and ACATS tests will rely on
these values. ImpDef is different in the following respects:
Defaults are provided. Some implementations may
be able to rely entirely on the default values and subprograms, so no
customization would be necessary.
Some implementations may choose to provide bodies
for procedures and/or functions. Bodies so provided must satisfy requirements
stated in ImpDef.
Tests depending on Impdef do not need customization
(macro substitution). Instead, ImpDef must be available at compile time
(i.e., included in the environment) for tests that rely upon it. This
simplifies the customization process and management and also is similar
to the way that Ada projects typically manage configuration parameters.
There are child packages of ImpDef for each of the
Specialized Needs Annexes. An implementation that uses one or more of
the Specialized Needs Annexes in its conformity assessment must customize
the associated ImpDef child packages (or rely on their defaults) and
must set the appropriate Booleans in impdef.a. It is not necessary to
customize Impdef children for Specialized Needs Annexes that are not
included in a particular conformity assessment.
Specific instructions for the values required by
ImpDef and its children are included in
impdef.a,
impdefc.a,
impdefd.a,
impdefe.a,
impdefg.a, and
impdefh.a.
(Note that
impdefc, for example, refers to Annex C.) An excerpt
from ImpDef is included in
Annex B, “
Parameterization
Files”.
All
implementations must customize impdef.a unless they wish to rely on the defaults provided. ImpDef must be part
of the environment whenever a test that depends on it is processed. Similarly,
the child of Impdef corresponding to each Specialized Needs Annex that
the implementer intends to test during a conformity assessment must be
customized and be part of the environment when the Annex tests are processed.