ACATS 4.1 User's Guide
4.3.2 Modern Naming
The name of a modern
ACATS test is composed of seven or eight characters. Foundation code
has a name composed of seven characters. The use of each character position
is described below. The first column indicates the character position(s)
starting from the left, and the second column indicates the kind of character
allowed, and the third column gives the corresponding meaning:
Position | Kind | Meaning
|
---|
1 | Letter | Test
class; foundations are marked 'F'.
|
2 | Alphanumeric | If
other than an 'x', the clause of the Ada Standard describing the feature
under test. An 'x' indicates that the test includes one or more features
from an annex of the Ada Standard.
|
3 | Alphanumeric | Core
subclause or annex letter identifier (either core or Specialized Needs
Annex); clauses are a hexadecimal value.
|
4 | Alphanumeric | Sub-subclause
(if a core test), or subclause (if an annex test); a number if less than
10, otherwise a letter with 10='A', 11='B', and so on.
|
5 | Alphanumeric | Foundation
identifier (alphabetic, unless no foundation is required, in which case
a '0').
|
6-7 | Decimal | Sequence
number of this test in a series of tests for the same clause; foundation
code will have "00".
|
8 | Alphanumeric | optional
– Compilation sequence identifier — indicates the suggested
or required compilation order of multiple files that make up a single
test (0 is compiled first). This position is used only if the test comprises
multiple files.
|
(Note: Formally groupings for all levels below the
top-level grouping are known as subclauses; here we use subclause to
specifically refer to the second level and sub-subclause to refer to
the third level.)
The convention is illustrated below.
Modern
File Name Convention
The file name extension
is a one or two character file name extension. There are six extensions:
.a
A file that contains only Ada code (except for configuration pragmas
in the case of some Specialized Needs Annex tests). It does not require
any processing to prepare it for compilation (unless configuration pragmas
must be handled separately). It is normally submitted directly to the
implementation for determination of test results.
.am
A file that contains the main subprogram for a multi-file test. Generally,
this extension is used for only one file of a test. In rare cases (some
Annex E tests), a multi-file test may have more than one file containing
a "main" subprogram; in such cases, the correct testing procedure
is described in the Special Requirements section of the test prologue.
.au
A file that contains only Ada code that contains characters outside of
the 7-bit ASCII character set. These files are provided in UTF-8 format
with a starting byte-order mark. For ACATS 4.1, these tests must be compiled
and run as all other tests of its test class, although usage of a different
workflow (which must be documented if it is necessary) is allowed. (Note
that
[Ada2012] requires compilers to
be able to process UTF-8 files, although the details [such as compiler
options] might be different than ASCII source files.)
.ftn
A file that contains Fortran language code and must be compiled by a
Fortran compiler. These files are used by tests that check a foreign
language interface to Fortran.
.c
A file that contains C language code and must be compiled by a C compiler.
These files are used by tests that check a foreign language interface
to C.
.cbl
A file that contains Cobol language code and must be compiled by a Cobol
compiler. These files are used by tests that check a foreign language
interface to Cobol.
A test that depends on foundation code has an alphabetic
character in the fifth position of its name. The required foundation
will have the same characters in the second through fifth positions of
its name. For example, C123Axx depends on F123A00.