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

4.104.114.84.95
Last change on this file since e8c20a0 was e8c20a0, checked in by Joel Sherrill <joel.sherrill@…>, on 08/27/02 at 13:12:04

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

  • sptests/sp21/sptest.adb: Fixed IO_Initialize invocations to match corrected prototype.
  • Property mode set to 100644
File size: 5.9 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      RESULT       : RTEMS.Unsigned32;
80      STATUS       : RTEMS.STATUS_CODES;
81   begin
82
83      TEXT_IO.PUT_LINE( "----- TESTING THE NULL DRIVER CHECKS -----" );
84
85      RTEMS.IO_INITIALIZE(
86         SPTEST.NO_DRIVER_MAJOR,
87         0,
88         RTEMS.NULL_ADDRESS,
89         STATUS
90      );
91      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_INITIALIZE" );
92      TEXT_IO.PUT_LINE(
93         "TA1 - io_initialize - NULL DRIVER SUCCESSFUL"
94      );
95   
96      RTEMS.IO_OPEN(
97         SPTEST.NO_DRIVER_MAJOR,
98         0,
99         RTEMS.NULL_ADDRESS,
100         STATUS
101      );
102      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_OPEN" );
103      TEXT_IO.PUT_LINE(
104         "TA1 - io_open       - NULL DRIVER SUCCESSFUL"
105      );
106   
107      RTEMS.IO_CLOSE(
108         SPTEST.NO_DRIVER_MAJOR,
109         0,
110         RTEMS.NULL_ADDRESS,
111         STATUS
112      );
113      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_CLOSE" );
114      TEXT_IO.PUT_LINE(
115         "TA1 - io_close      - NULL DRIVER SUCCESSFUL"
116      );
117   
118      RTEMS.IO_READ(
119         SPTEST.NO_DRIVER_MAJOR,
120         0,
121         RTEMS.NULL_ADDRESS,
122         STATUS
123      );
124      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_READ" );
125      TEXT_IO.PUT_LINE(
126         "TA1 - io_read       - NULL DRIVER SUCCESSFUL"
127      );
128   
129      RTEMS.IO_WRITE(
130         SPTEST.NO_DRIVER_MAJOR,
131         0,
132         RTEMS.NULL_ADDRESS,
133         STATUS
134      );
135      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_WRITE" );
136      TEXT_IO.PUT_LINE(
137         "TA1 - io_write      - NULL DRIVER SUCCESSFUL"
138      );
139   
140      RTEMS.IO_CONTROL(
141         SPTEST.NO_DRIVER_MAJOR,
142         0,
143         RTEMS.NULL_ADDRESS,
144         STATUS
145      );
146      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_CONTROL" );
147      TEXT_IO.PUT_LINE(
148         "TA1 - io_control    - NULL DRIVER SUCCESSFUL"
149      );
150   
151      TEXT_IO.PUT_LINE( "----- TESTING THE I/O MANAGER DIRECTIVES -----" );
152
153      RTEMS.IO_INITIALIZE(
154         SPTEST.STUB_DRIVER_MAJOR,
155         0,
156         RTEMS.NULL_ADDRESS,
157         RESULT,
158         STATUS
159      );
160      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_INITIALIZE" );
161      TEXT_IO.PUT_LINE(
162         "TA1 - io_initialize - STUB DRIVER SUCCESSFUL"
163      );
164   
165      RTEMS.IO_OPEN(
166         SPTEST.STUB_DRIVER_MAJOR,
167         0,
168         RTEMS.NULL_ADDRESS,
169         STATUS
170      );
171      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_OPEN" );
172      TEXT_IO.PUT_LINE(
173         "TA1 - io_open       - STUB DRIVER SUCCESSFUL"
174      );
175   
176      RTEMS.IO_CLOSE(
177         SPTEST.STUB_DRIVER_MAJOR,
178         0,
179         RTEMS.NULL_ADDRESS,
180         STATUS
181      );
182      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_CLOSE" );
183      TEXT_IO.PUT_LINE(
184         "TA1 - io_close      - STUB DRIVER SUCCESSFUL"
185      );
186   
187      RTEMS.IO_READ(
188         SPTEST.STUB_DRIVER_MAJOR,
189         0,
190         RTEMS.NULL_ADDRESS,
191         STATUS
192      );
193      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_READ" );
194      TEXT_IO.PUT_LINE(
195         "TA1 - io_read       - STUB DRIVER SUCCESSFUL"
196      );
197   
198      RTEMS.IO_WRITE(
199         SPTEST.STUB_DRIVER_MAJOR,
200         0,
201         RTEMS.NULL_ADDRESS,
202         STATUS
203      );
204      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_WRITE" );
205      TEXT_IO.PUT_LINE(
206         "TA1 - io_write      - STUB DRIVER SUCCESSFUL"
207      );
208   
209      RTEMS.IO_CONTROL(
210         SPTEST.STUB_DRIVER_MAJOR,
211         0,
212         RTEMS.NULL_ADDRESS,
213         STATUS
214      );
215      TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "IO_CONTROL" );
216      TEXT_IO.PUT_LINE(
217         "TA1 - io_control    - STUB DRIVER SUCCESSFUL"
218      );
219
220      TEXT_IO.PUT_LINE( "----- RETURNING INVALID MAJOR NUMBER -----" );
221
222      RTEMS.IO_INITIALIZE(
223         SPTEST.INVALID_DRIVER_MAJOR,
224         0,
225         RTEMS.NULL_ADDRESS,
226         STATUS
227      );
228      TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
229         STATUS,
230         RTEMS.INVALID_NUMBER,
231         "IO_INITIALIZE"
232      );
233      TEXT_IO.PUT_LINE(
234         "TA1 - io_initialize - INVALID_NUMBER"
235      );
236   
237      RTEMS.IO_OPEN(
238         SPTEST.INVALID_DRIVER_MAJOR,
239         0,
240         RTEMS.NULL_ADDRESS,
241         STATUS
242      );
243      TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
244         STATUS,
245         RTEMS.INVALID_NUMBER,
246         "IO_OPEN"
247      );
248      TEXT_IO.PUT_LINE(
249         "TA1 - io_open       - INVALID_NUMBER"
250      );
251   
252      TEXT_IO.PUT_LINE( "*** END OF TEST 21 ***" );
253      RTEMS.SHUTDOWN_EXECUTIVE( 0 );
254   
255   end TASK_1;
256
257end SPTEST;
Note: See TracBrowser for help on using the repository browser.