3 -- Grant of Unlimited Rights
5 -- Under contracts F33600-87-D-0337, F33600-84-D-0280, MDA903-79-C-0687,
6 -- F08630-91-C-0015, and DCA100-97-D-0025, the U.S. Government obtained
7 -- unlimited rights in the software and documentation contained herein.
8 -- Unlimited rights are defined in DFAR 252.227-7013(a)(19). By making
9 -- this public release, the Government intends to confer upon all
10 -- recipients unlimited rights equal to those held by the Government.
11 -- These rights include rights to use, duplicate, release or disclose the
12 -- released technical data and computer software in whole or in part, in
13 -- any manner and for any purpose whatsoever, and to have or permit others
18 -- ALL MATERIALS OR INFORMATION HEREIN RELEASED, MADE AVAILABLE OR
19 -- DISCLOSED ARE AS IS. THE GOVERNMENT MAKES NO EXPRESS OR IMPLIED
20 -- WARRANTY AS TO ANY MATTER WHATSOEVER, INCLUDING THE CONDITIONS OF THE
21 -- SOFTWARE, DOCUMENTATION OR OTHER INFORMATION RELEASED, MADE AVAILABLE
22 -- OR DISCLOSED, OR THE OWNERSHIP, MERCHANTABILITY, OR FITNESS FOR A
23 -- PARTICULAR PURPOSE OF SAID MATERIAL.
26 -- CHECK THAT GET FOR ENUMERATION TYPES RAISES DATA_ERROR WHEN THE
27 -- ELEMENT RETRIEVED IS NOT OF THE TYPE EXPECTED OR IS OUT OF THE
28 -- RANGE OF A SUBTYPE. ALSO CHECK THAT CONSTRAINT_ERROR IS RAISED
29 -- IF THE VALUE READ IS OUT OF RANGE OF THE ITEM PARAMETER, BUT
30 -- WITHIN THE RANGE OF THE INSTANTIATED TYPE.
32 -- APPLICABILITY CRITERIA:
33 -- THIS TEST IS APPLICABLE ONLY TO IMPLEMENTATIONS WHICH
34 -- SUPPORT TEXT FILES.
39 -- JBG 02/22/84 CHANGED TO .ADA TEST.
40 -- TBN 11/10/86 REVISED TEST TO OUTPUT A NON_APPLICABLE
41 -- RESULT WHEN FILES ARE NOT SUPPORTED.
42 -- DWC 09/16/87 REMOVED DEPENDENCE ON RESET AND CORRECTED
43 -- EXCEPTION HANDLING.
51 INCOMPLETE
: EXCEPTION;
55 TEST
("CE3905C", "CHECK THAT GET FOR ENUMERATION TYPES RAISES " &
56 "DATA_ERROR WHEN THE ELEMENT RETRIEVED IS NOT " &
57 "OF THE TYPE EXPECTED OR IS OUT OF THE RANGE " &
58 "OF A SUBTYPE. ALSO CHECK THAT " &
59 "CONSTRAINT_ERROR IS RAISED IF THE VALUE READ " &
60 "IS OUT OF RANGE OF THE ITEM PARAMETER, BUT " &
61 "WITHIN THE RANGE OF THE INSTANTIATED TYPE");
65 TYPE COLOR
IS (RED
, BLUE
, YELLOW
, WHITE
, ORANGE
, GREEN
,
67 SUBTYPE P_COLOR
IS COLOR
RANGE RED
.. YELLOW
;
68 CRAYON
: COLOR
:= BLACK
;
69 PAINT
: P_COLOR
:= BLUE
;
71 PACKAGE COLOR_IO
IS NEW ENUMERATION_IO
(COLOR
);
75 -- CREATE AND INITIALIZE DATA FILE
78 CREATE
(FT
, OUT_FILE
, LEGAL_FILE_NAME
);
81 NOT_APPLICABLE
("USE_ERROR RAISED; TEXT CREATE " &
82 "WITH OUT_FILE MODE");
85 NOT_APPLICABLE
("NAME_ERROR RAISED; TEXT CREATE " &
86 "WITH OUT_FILE MODE");
107 OPEN
(FT
, IN_FILE
, LEGAL_FILE_NAME
);
110 NOT_APPLICABLE
("USE_ERROR RAISED; OPEN WITH " &
118 GET
(FT
, CRAYON
); -- BROWN
119 FAILED
("DATA_ERROR NOT RAISED - 1");
122 IF CRAYON
/= BLACK
THEN
123 FAILED
("ITEM CRAYON AFFECTED - 1");
126 FAILED
("WRONG EXCEPTION RAISED - 1");
130 GET
(FT
, PAINT
); -- ORANGE
131 FAILED
("CONSTRAINT_ERROR NOT RAISED");
133 WHEN CONSTRAINT_ERROR
=>
134 IF PAINT
/= BLUE
THEN
135 FAILED
("ITEM PAINT AFFECTED - 2");
138 FAILED
("DATA_ERROR RAISED FOR ITEM SUBTYPE");
140 FAILED
("WRONG EXCEPTION RAISED - 2");
144 PACKAGE P_COLOR_IO
IS NEW ENUMERATION_IO
(P_COLOR
);
148 P_COLOR_IO
.GET
(FT
, PAINT
); -- GREEN
149 FAILED
("DATA_ERROR NOT RAISED - 3");
152 IF PAINT
/= BLUE
THEN
153 FAILED
("ITEM PAINT AFFECTED - 3");
156 FAILED
("WRONG EXCEPTION RAISED - 3");
160 P_COLOR_IO
.GET
(FT
, PAINT
); -- WHITE
161 FAILED
("DATA_ERROR NOT RAISED - 3A");
166 FAILED
("WRONG EXCEPTION RAISED - 3A");
171 GET
(FT
, CRAYON
); -- WHI
172 FAILED
("DATA_ERROR NOT RAISED - 4");
177 FAILED
("WRONG EXCEPTION RAISED - 4");
182 GET
(FT
, CRAYON
); -- RED
183 IF CRAYON
/= RED
THEN
184 FAILED
("READING NOT CONTINUED CORRECTLY AFTER" &
185 "DATA_ERROR EXCEPTION");