WITH REPORT; USE REPORT;
WITH SEQUENTIAL_IO;
PROCEDURE CE2102L IS
PACKAGE SEQ_IO IS NEW SEQUENTIAL_IO(INTEGER);
USE SEQ_IO;
TEST_FILE_ONE : SEQ_IO.FILE_TYPE;
STR : STRING (1 .. 10);
FL_MODE : SEQ_IO.FILE_MODE ;
BEGIN
TEST ("CE2102L", "CHECK THAT STATUS_ERROR IS RAISED WHEN " &
"PERFORMING ILLEGAL OPERATIONS ON UNOPENED " &
"FILES OF TYPE SEQUENTIAL_IO");
BEGIN
CLOSE (TEST_FILE_ONE);
FAILED ("STATUS_ERROR NOT RAISED WHEN AN UNOPENED " &
"FILE IS USED IN A CLOSE");
EXCEPTION
WHEN STATUS_ERROR =>
NULL;
WHEN OTHERS =>
FAILED ("WRONG EXCEPTION RAISED ON CLOSE");
END;
BEGIN
DELETE (TEST_FILE_ONE);
FAILED ("STATUS_ERROR NOT RAISED WHEN AN UNOPENED " &
"FILE IS USED IN A DELETE");
EXCEPTION
WHEN STATUS_ERROR =>
NULL;
WHEN OTHERS =>
FAILED ("WRONG EXCEPTION RAISED ON DELETE");
END;
BEGIN
RESET (TEST_FILE_ONE);
FAILED ("STATUS_ERROR NOT RAISED WHEN AN UNOPENED " &
"FILE IS USED IN A RESET");
EXCEPTION
WHEN STATUS_ERROR =>
NULL;
WHEN OTHERS =>
FAILED ("WRONG EXCEPTION RAISED ON RESET");
END;
BEGIN
RESET (TEST_FILE_ONE, IN_FILE);
FAILED ("STATUS_ERROR NOT RAISED WHEN A UNOPENED FILE " &
"IS USED IN A RESET WITH MODE PARAMETER");
EXCEPTION
WHEN STATUS_ERROR =>
NULL;
WHEN OTHERS =>
FAILED ("WRONG EXCEPTION RAISED ON RESET " &
"WITH MODE");
END;
BEGIN
FL_MODE := MODE (TEST_FILE_ONE);
FAILED ("STATUS_ERROR NOT RAISED WHEN A UNOPENED " &
"FILE IS USED IN A MODE OPERATION");
EXCEPTION
WHEN STATUS_ERROR =>
NULL;
WHEN OTHERS =>
FAILED ("WRONG EXCEPTION RAISED ON MODE");
END;
BEGIN
STR := NAME (TEST_FILE_ONE);
FAILED ("STATUS_ERROR NOT RAISED WHEN A UNOPENED " &
"FILE IS USED IN A NAME OPERATION");
EXCEPTION
WHEN STATUS_ERROR =>
NULL;
WHEN OTHERS =>
FAILED ("WRONG EXCEPTION RAISED ON NAME");
END;
BEGIN
STR := FORM (TEST_FILE_ONE);
FAILED ("STATUS_ERROR NOT RAISED WHEN AN UNOPENED " &
"FILE IS USED IN A FORM OPERATION");
EXCEPTION
WHEN STATUS_ERROR =>
NULL;
WHEN OTHERS =>
FAILED ("WRONG EXCEPTION RAISED ON FORM");
END;
RESULT;
END CE2102L;