1-- CE2201J.ADA 2 3-- Grant of Unlimited Rights 4-- 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 14-- to do so. 15-- 16-- DISCLAIMER 17-- 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. 24--* 25-- OBJECTIVE: 26-- CHECK THAT READ, WRITE, AND END_OF_FILE ARE SUPPORTED FOR 27-- SEQUENTIAL FILES WITH ELEMENT TYPE ENUMERATION. 28 29-- APPLICABILITY CRITERIA: 30-- THIS TEST IS APPLICABLE ONLY TO IMPLEMENTATIONS WHICH SUPPORT 31-- SEQUENTIAL FILES. 32 33-- HISTORY: 34-- JLH 07/28/87 CREATED ORIGINAL TEST. 35 36WITH REPORT; 37USE REPORT; 38WITH SEQUENTIAL_IO; 39 40PROCEDURE CE2201J IS 41 42BEGIN 43 44 TEST ("CE2201J", "CHECK THAT READ, WRITE, AND " & 45 "END_OF_FILE ARE SUPPORTED FOR " & 46 "SEQUENTIAL FILES - ENUMERATION TYPE"); 47 48 DECLARE 49 TYPE ENUMERATION IS (ONE, TWO, '4'); 50 PACKAGE SEQ_ENUM IS NEW SEQUENTIAL_IO (ENUMERATION); 51 USE SEQ_ENUM; 52 FILE_ENUM : FILE_TYPE; 53 INCOMPLETE : EXCEPTION; 54 ENUM : ENUMERATION := ('4'); 55 ITEM_ENUM : ENUMERATION; 56 BEGIN 57 BEGIN 58 CREATE (FILE_ENUM, OUT_FILE, LEGAL_FILE_NAME); 59 EXCEPTION 60 WHEN USE_ERROR | NAME_ERROR => 61 NOT_APPLICABLE ("CREATE OF SEQUENTIAL FILE WITH " & 62 "MODE OUT_FILE NOT SUPPORTED"); 63 RAISE INCOMPLETE; 64 END; 65 66 WRITE (FILE_ENUM, ENUM); 67 CLOSE (FILE_ENUM); 68 69 BEGIN 70 OPEN (FILE_ENUM, IN_FILE, LEGAL_FILE_NAME); 71 EXCEPTION 72 WHEN USE_ERROR => 73 NOT_APPLICABLE ("OPEN OF SEQUENTIAL FILE WITH " & 74 "MODE IN_FILE NOT SUPPORTED"); 75 RAISE INCOMPLETE; 76 END; 77 78 IF END_OF_FILE (FILE_ENUM) THEN 79 FAILED ("WRONG END_OF_FILE VALUE FOR TYPE ENUMERATION"); 80 END IF; 81 82 READ (FILE_ENUM, ITEM_ENUM); 83 84 IF ITEM_ENUM /= '4' THEN 85 FAILED ("READ WRONG VALUE - ENUMERATION"); 86 END IF; 87 88 IF NOT END_OF_FILE (FILE_ENUM) THEN 89 FAILED ("END OF FILE NOT TRUE - ENUMERATION"); 90 END IF; 91 92 BEGIN 93 DELETE (FILE_ENUM); 94 EXCEPTION 95 WHEN USE_ERROR => 96 NULL; 97 END; 98 99 EXCEPTION 100 WHEN INCOMPLETE => 101 NULL; 102 END; 103 104 RESULT; 105 106END CE2201J; 107