OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [ada/] [acats/] [tests/] [ce/] [ce3409c.ada] - Blame information for rev 720

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 720 jeremybenn
-- CE3409C.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 SET_COL SETS THE CURRENT COLUMN NUMBER TO THE VALUE
27
--     SPECIFIED BY TO FOR FILES OF MODES IN_FILE AND OUT_FILE.
28
--     CHECK THAT IT HAS NO EFFECT IF THE VALUE SPECIFIED BY TO IS
29
--     EQUAL TO THE CURRENT COLUMN NUMBER FOR BOTH IN_FILE AND OUT_FILE.
30
 
31
-- APPLICABILITY CRITERIA:
32
--     THIS TEST IS APPLICABLE ONLY TO IMPLEMENTATIONS WHICH SUPPORT
33
--     TEXT FILES.
34
 
35
-- HISTORY:
36
--     ABW 08/26/82
37
--     SPS 09/20/82
38
--     JBG 01/27/83
39
--     SPS 02/18/83
40
--     EG  05/22/85
41
--     TBN 11/10/86  REVISED TEST TO OUTPUT A NOT_APPLICABLE
42
--                   RESULT WHEN FILES ARE NOT SUPPORTED.
43
--     JLH 08/31/87  REMOVED DEPENDENCE ON RESET, REMOVED UNNECESSARY
44
--                   CODE, AND CHECKED FOR USE_ERROR ON DELETE.
45
 
46
WITH REPORT; USE REPORT;
47
WITH TEXT_IO; USE TEXT_IO;
48
WITH CHECK_FILE;
49
 
50
PROCEDURE CE3409C IS
51
 
52
     INCOMPLETE : EXCEPTION;
53
 
54
BEGIN
55
     TEST ("CE3409C", "CHECK THAT SET_COL SETS THE CURRENT COLUMN " &
56
                      "NUMBER TO THE VALUE SPECIFIED BY TO FOR FILES " &
57
                      "OF MODES IN_FILE AND OUT_FILE.  CHECK THAT IT " &
58
                      "HAS NO EFFECT IF THE VALUE SPECIFIED BY TO IS " &
59
                      "EQUAL TO THE CURRENT COLUMN NUMBER FOR BOTH " &
60
                      "IN_FILE AND OUT_FILE");
61
 
62
     DECLARE
63
          FILE : FILE_TYPE;
64
          CHAR : CHARACTER := ('C');
65
          ITEM_CHAR : CHARACTER;
66
          ONE  : POSITIVE_COUNT := POSITIVE_COUNT (IDENT_INT(1));
67
          TWO  : POSITIVE_COUNT := POSITIVE_COUNT (IDENT_INT(2));
68
          FOUR : POSITIVE_COUNT := POSITIVE_COUNT (IDENT_INT(4));
69
     BEGIN
70
 
71
          BEGIN
72
               CREATE (FILE, OUT_FILE, LEGAL_FILE_NAME);
73
          EXCEPTION
74
               WHEN USE_ERROR =>
75
                    NOT_APPLICABLE ("USE_ERROR RAISED ON TEXT CREATE " &
76
                                    "WITH OUT_FILE MODE");
77
                    RAISE INCOMPLETE;
78
               WHEN NAME_ERROR =>
79
                    NOT_APPLICABLE ("NAME_ERROR RAISED ON TEXT " &
80
                                    "CREATE WITH OUT_FILE MODE");
81
                    RAISE INCOMPLETE;
82
               WHEN OTHERS =>
83
                    FAILED ("UNEXPECTED EXCEPTION RAISED ON TEXT " &
84
                            "CREATE");
85
                    RAISE INCOMPLETE;
86
          END;
87
 
88
          SET_PAGE_LENGTH (FILE, TWO);
89
          SET_COL (FILE, FOUR);
90
          IF COL (FILE) /= FOUR THEN
91
               FAILED ("FOR OUT_FILE COLUMN NOT FOUR");
92
          ELSE
93
               PUT (FILE, 'C');
94
               SET_COL (FILE, 5);
95
               IF COL (FILE) /= FOUR+1 OR LINE (FILE) /= ONE THEN
96
                    FAILED ("FOR OUT_FILE COLUMN UNNECESSARILY " &
97
                            "CHANGED FROM FOUR");
98
               ELSE
99
                    SET_COL (FILE, 8);
100
                    PUT (FILE, "DE");
101
                    SET_COL (FILE, TWO+1);
102
                    IF COL (FILE) /= TWO+ONE OR LINE (FILE) /= TWO THEN
103
                         FAILED ("FOR OUT_FILE COLUMN NOT TWO");
104
                    END IF;
105
                    PUT (FILE, 'B');
106
                    SET_COL (FILE, TWO);
107
 
108
                    IF PAGE (FILE) /= TWO THEN
109
                         FAILED ("PAGE TERMINATOR NOT OUTPUT");
110
                    END IF;
111
 
112
                    IF LINE (FILE) /= ONE THEN
113
                         FAILED ("LINE TERMINATOR NOT OUTPUT");
114
                    END IF;
115
 
116
                    IF COL (FILE) /= TWO THEN
117
                         FAILED ("COL NOT TWO; IS" &
118
                                 COUNT'IMAGE(COL(FILE)));
119
                    END IF;
120
 
121
                    PUT (FILE, 'X');
122
               END IF;
123
          END IF;
124
 
125
          CHECK_FILE (FILE, "   C   DE#  B#@ X#@%");
126
 
127
          CLOSE (FILE);
128
 
129
          BEGIN
130
               OPEN (FILE, IN_FILE, LEGAL_FILE_NAME);
131
          EXCEPTION
132
               WHEN USE_ERROR =>
133
                    NOT_APPLICABLE ("USE_ERROR RAISED ON TEXT OPEN " &
134
                                    "WITH MODE IN_FILE");
135
                    RAISE INCOMPLETE;
136
          END;
137
 
138
          SET_COL (FILE, FOUR);
139
          IF COL (FILE) /= FOUR THEN
140
               FAILED ("FOR IN_FILE COLUMN NOT FOUR");
141
          ELSE
142
               GET (FILE, ITEM_CHAR);
143
               IF ITEM_CHAR /= 'C' THEN
144
                    FAILED ("SET_COL FOR READ; ACTUALLY READ '" &
145
                            ITEM_CHAR & "'");
146
               END IF;
147
 
148
               SET_COL (FILE, 5);
149
               IF COL (FILE) /= FOUR+1 OR LINE (FILE) /= ONE THEN
150
                    FAILED ("FOR IN_FILE COLUMN UNNECESSARILY " &
151
                            "CHANGED FROM FOUR");
152
               ELSE
153
                    SET_COL (FILE, 9);
154
                    GET (FILE, ITEM_CHAR);
155
                    IF ITEM_CHAR /= 'E' THEN
156
                         FAILED ("SET_COL FOR READ 2; ACTUALLY READ '" &
157
                                 ITEM_CHAR & "'");
158
                    END IF;
159
 
160
                    SET_COL (FILE, 3);
161
                    GET (FILE, ITEM_CHAR);
162
                    IF ITEM_CHAR /= 'B' THEN
163
                         FAILED ("SET_COL FOR READ 3; ACTUALLY READ '" &
164
                                 ITEM_CHAR & "'");
165
                    END IF;
166
 
167
                    IF COL (FILE) /= 4 OR LINE (FILE) /= TWO THEN
168
                         FAILED ("FOR IN_FILE COLUMN NOT TWO");
169
                    END IF;
170
               END IF;
171
          END IF;
172
 
173
          BEGIN
174
               DELETE (FILE);
175
          EXCEPTION
176
               WHEN USE_ERROR =>
177
                    NULL;
178
          END;
179
 
180
     END;
181
 
182
     RESULT;
183
 
184
EXCEPTION
185
     WHEN INCOMPLETE =>
186
          RESULT;
187
 
188
END CE3409C;

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.