source: rtems/c/src/ada-tests/sptests/sp21/sptest.adb @ 61cd8db

4.104.114.84.95
Last change on this file since 61cd8db was 61cd8db, checked in by Joel Sherrill <joel.sherrill@…>, on 08/26/02 at 13:37:16

2002-08-26 Joel Sherrill <joel@…>

  • sptests/sp09/sptest.adb, sptests/sp21/sptest.adb: All RTEMS IO Manager directives take fewer arguments than these tests used.
  • Property mode set to 100644
File size: 5.8 KB
Line 
1--
2--  SPTEST / BODY
3--
4--  DESCRIPTION:
5--
6--  This package is the implementation of Test 21 of the RTEMS
7--  Single Processor Test Suite.
8--
9--  DEPENDENCIES:
10--
11-- 
12--
13--  COPYRIGHT (c) 1989-1997.
14--  On-Line Applications Research Corporation (OAR).
15--  Copyright assigned to U.S. Government, 1994.
16--
17--  The license and distribution terms for this file may in
18--  the file LICENSE in this distribution or at
19--  http://www.OARcorp.com/rtems/license.html.
20--
21--  $Id$
22--
23
24with INTERFACES; use INTERFACES;
25with RTEMS;
26with TEST_SUPPORT;
27with TEXT_IO;
28
29package body SPTEST is
30
31--PAGE
32--
33--  INIT
34--
35
36   procedure INIT (
37      ARGUMENT : in     RTEMS.TASK_ARGUMENT
38   ) is
39      STATUS : RTEMS.STATUS_CODES;
40   begin
41
42      TEXT_IO.NEW_LINE( 2 );
43      TEXT_IO.PUT_LINE( "*** TEST 21 ***" );
44
45      SPTEST.TASK_NAME( 1 ) := RTEMS.BUILD_NAME(  'T', 'A', '1', ' ' );
46
47      RTEMS.TASK_CREATE(
48         SPTEST.TASK_NAME( 1 ),
49         1,
50         2048,
51         RTEMS.DEFAULT_MODES,
52         RTEMS.DEFAULT_ATTRIBUTES,
53         SPTEST.TASK_ID( 1 ),
54         STATUS
55      );
56      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_CREATE OF TA1" );
57
58      RTEMS.TASK_START(
59         SPTEST.TASK_ID( 1 ),
60         SPTEST.TASK_1'ACCESS,
61         0,
62         STATUS
63      );
64      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_START OF TA1" );
65
66      RTEMS.TASK_DELETE( RTEMS.SELF, STATUS );
67      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "TASK_DELETE OF SELF" );
68
69   end INIT;
70
71--PAGE
72--
73--  TASK_1
74--
75
76   procedure TASK_1 (
77      ARGUMENT : in     RTEMS.TASK_ARGUMENT
78   ) is
79      STATUS       : RTEMS.STATUS_CODES;
80   begin
81
82      TEXT_IO.PUT_LINE( "----- TESTING THE NULL DRIVER CHECKS -----" );
83
84      RTEMS.IO_INITIALIZE(
85         SPTEST.NO_DRIVER_MAJOR,
86         0,
87         RTEMS.NULL_ADDRESS,
88         STATUS
89      );
90      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_INITIALIZE" );
91      TEXT_IO.PUT_LINE(
92         "TA1 - io_initialize - NULL DRIVER SUCCESSFUL"
93      );
94   
95      RTEMS.IO_OPEN(
96         SPTEST.NO_DRIVER_MAJOR,
97         0,
98         RTEMS.NULL_ADDRESS,
99         STATUS
100      );
101      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_OPEN" );
102      TEXT_IO.PUT_LINE(
103         "TA1 - io_open       - NULL DRIVER SUCCESSFUL"
104      );
105   
106      RTEMS.IO_CLOSE(
107         SPTEST.NO_DRIVER_MAJOR,
108         0,
109         RTEMS.NULL_ADDRESS,
110         STATUS
111      );
112      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_CLOSE" );
113      TEXT_IO.PUT_LINE(
114         "TA1 - io_close      - NULL DRIVER SUCCESSFUL"
115      );
116   
117      RTEMS.IO_READ(
118         SPTEST.NO_DRIVER_MAJOR,
119         0,
120         RTEMS.NULL_ADDRESS,
121         STATUS
122      );
123      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_READ" );
124      TEXT_IO.PUT_LINE(
125         "TA1 - io_read       - NULL DRIVER SUCCESSFUL"
126      );
127   
128      RTEMS.IO_WRITE(
129         SPTEST.NO_DRIVER_MAJOR,
130         0,
131         RTEMS.NULL_ADDRESS,
132         STATUS
133      );
134      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_WRITE" );
135      TEXT_IO.PUT_LINE(
136         "TA1 - io_write      - NULL DRIVER SUCCESSFUL"
137      );
138   
139      RTEMS.IO_CONTROL(
140         SPTEST.NO_DRIVER_MAJOR,
141         0,
142         RTEMS.NULL_ADDRESS,
143         STATUS
144      );
145      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_CONTROL" );
146      TEXT_IO.PUT_LINE(
147         "TA1 - io_control    - NULL DRIVER SUCCESSFUL"
148      );
149   
150      TEXT_IO.PUT_LINE( "----- TESTING THE I/O MANAGER DIRECTIVES -----" );
151
152      RTEMS.IO_INITIALIZE(
153         SPTEST.STUB_DRIVER_MAJOR,
154         0,
155         RTEMS.NULL_ADDRESS,
156         STATUS
157      );
158      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_INITIALIZE" );
159      TEXT_IO.PUT_LINE(
160         "TA1 - io_initialize - STUB DRIVER SUCCESSFUL"
161      );
162   
163      RTEMS.IO_OPEN(
164         SPTEST.STUB_DRIVER_MAJOR,
165         0,
166         RTEMS.NULL_ADDRESS,
167         STATUS
168      );
169      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_OPEN" );
170      TEXT_IO.PUT_LINE(
171         "TA1 - io_open       - STUB DRIVER SUCCESSFUL"
172      );
173   
174      RTEMS.IO_CLOSE(
175         SPTEST.STUB_DRIVER_MAJOR,
176         0,
177         RTEMS.NULL_ADDRESS,
178         STATUS
179      );
180      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_CLOSE" );
181      TEXT_IO.PUT_LINE(
182         "TA1 - io_close      - STUB DRIVER SUCCESSFUL"
183      );
184   
185      RTEMS.IO_READ(
186         SPTEST.STUB_DRIVER_MAJOR,
187         0,
188         RTEMS.NULL_ADDRESS,
189         STATUS
190      );
191      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_READ" );
192      TEXT_IO.PUT_LINE(
193         "TA1 - io_read       - STUB DRIVER SUCCESSFUL"
194      );
195   
196      RTEMS.IO_WRITE(
197         SPTEST.STUB_DRIVER_MAJOR,
198         0,
199         RTEMS.NULL_ADDRESS,
200         STATUS
201      );
202      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_WRITE" );
203      TEXT_IO.PUT_LINE(
204         "TA1 - io_write      - STUB DRIVER SUCCESSFUL"
205      );
206   
207      RTEMS.IO_CONTROL(
208         SPTEST.STUB_DRIVER_MAJOR,
209         0,
210         RTEMS.NULL_ADDRESS,
211         STATUS
212      );
213      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_CONTROL" );
214      TEXT_IO.PUT_LINE(
215         "TA1 - io_control    - STUB DRIVER SUCCESSFUL"
216      );
217
218      TEXT_IO.PUT_LINE( "----- RETURNING INVALID MAJOR NUMBER -----" );
219
220      RTEMS.IO_INITIALIZE(
221         SPTEST.INVALID_DRIVER_MAJOR,
222         0,
223         RTEMS.NULL_ADDRESS,
224         STATUS
225      );
226      TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
227         STATUS,
228         RTEMS.INVALID_NUMBER,
229         "IO_INITIALIZE"
230      );
231      TEXT_IO.PUT_LINE(
232         "TA1 - io_initialize - INVALID_NUMBER"
233      );
234   
235      RTEMS.IO_OPEN(
236         SPTEST.INVALID_DRIVER_MAJOR,
237         0,
238         RTEMS.NULL_ADDRESS,
239         STATUS
240      );
241      TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
242         STATUS,
243         RTEMS.INVALID_NUMBER,
244         "IO_OPEN"
245      );
246      TEXT_IO.PUT_LINE(
247         "TA1 - io_open       - INVALID_NUMBER"
248      );
249   
250      TEXT_IO.PUT_LINE( "*** END OF TEST 21 ***" );
251      RTEMS.SHUTDOWN_EXECUTIVE( 0 );
252   
253   end TASK_1;
254
255end SPTEST;
Note: See TracBrowser for help on using the repository browser.