summaryrefslogtreecommitdiffstats
path: root/c/src/ada-tests/sptests/sp09/sptest.adb
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/ada-tests/sptests/sp09/sptest.adb')
-rw-r--r--c/src/ada-tests/sptests/sp09/sptest.adb397
1 files changed, 133 insertions, 264 deletions
diff --git a/c/src/ada-tests/sptests/sp09/sptest.adb b/c/src/ada-tests/sptests/sp09/sptest.adb
index ddd67030e6..d2d6429663 100644
--- a/c/src/ada-tests/sptests/sp09/sptest.adb
+++ b/c/src/ada-tests/sptests/sp09/sptest.adb
@@ -10,7 +10,7 @@
--
--
--
--- COPYRIGHT (c) 1989-1997.
+-- COPYRIGHT (c) 1989-2007.
-- On-Line Applications Research Corporation (OAR).
--
-- The license and distribution terms for this file may in
@@ -69,22 +69,6 @@ package body SPTEST is
SPTEST.PERIOD_NAME( 1 ) := RTEMS.BUILD_NAME( 'T', 'M', '1', ' ' );
--- RTEMS.TASK_CREATE(
--- SPTEST.TASK_NAME( 1 ),
--- 4,
--- 10,
--- RTEMS.DEFAULT_MODES,
--- RTEMS.DEFAULT_ATTRIBUTES,
--- SPTEST.TASK_ID( 1 ),
--- STATUS
--- );
--- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
--- STATUS,
--- RTEMS.INVALID_SIZE,
--- "TASK_CREATE WITH ILLEGAL STACK SIZE"
--- );
- TEXT_IO.PUT_LINE( "INIT - task_create - INVALID_SIZE -- NOT CHECKED" );
-
RTEMS.TASK_CREATE(
SPTEST.TASK_NAME( 1 ),
0,
@@ -154,20 +138,6 @@ package body SPTEST is
--PAGE
--
--- SERVICE_ROUTINE
---
-
- procedure SERVICE_ROUTINE (
- IGNORED : in RTEMS.VECTOR_NUMBER
- ) is
- begin
-
- NULL;
-
- end SERVICE_ROUTINE;
-
---PAGE
---
-- SCREEN_1
--
@@ -187,20 +157,24 @@ package body SPTEST is
);
TEXT_IO.PUT_LINE( "TA1 - task_delete - INVALID_ID" );
--- RTEMS.TASK_GET_NOTE( RTEMS.SELF,
--- RTEMS.NOTEPAD_INDEX'LAST + 10,
--- NOTEPAD_VALUE,
--- STATUS
--- );
--- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
--- STATUS,
--- RTEMS.INVALID_NUMBER,
--- "TASK_GET_NOTE WITH ILLEGAL NOTEPAD"
--- );
--- TEXT_IO.PUT_LINE( "TA1 - task_get_note - INVALID_NUMBER" );
- TEXT_IO.PUT_LINE(
- "TA1 - task_get_note - INVALID_NUMBER -- constraint error"
- );
+ begin
+ RTEMS.TASK_GET_NOTE( RTEMS.SELF,
+ RTEMS.NOTEPAD_INDEX'LAST + 10,
+ NOTEPAD_VALUE,
+ STATUS
+ );
+ TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
+ STATUS,
+ RTEMS.INVALID_NUMBER,
+ "TASK_GET_NOTE WITH ILLEGAL NOTEPAD"
+ );
+ TEXT_IO.PUT_LINE( "TA1 - task_get_note - INVALID_NUMBER" );
+ exception
+ when others =>
+ TEXT_IO.PUT_LINE(
+ "TA1 - task_get_note - INVALID_NUMBER -- constraint error"
+ );
+ end;
RTEMS.TASK_GET_NOTE(
100,
@@ -252,11 +226,19 @@ package body SPTEST is
TEXT_IO.PUT_LINE( "TA1 - task_ident - local INVALID_NAME" );
RTEMS.TASK_IDENT( 100, 2, SPTEST.JUNK_ID, STATUS );
- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
- STATUS,
- RTEMS.INVALID_NODE,
- "TASK_IDENT WITH ILLEGAL NODE"
- );
+ if TEST_SUPPORT.Is_Configured_Multiprocessing then
+ TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
+ STATUS,
+ RTEMS.INVALID_NODE,
+ "TASK_IDENT WITH ILLEGAL NODE"
+ );
+ else
+ TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
+ STATUS,
+ RTEMS.INVALID_NAME,
+ "TASK_IDENT WITH ILLEGAL NODE"
+ );
+ end if;
TEXT_IO.PUT_LINE( "TA1 - task_ident - INVALID_NODE" );
RTEMS.TASK_RESTART( 100, 0, STATUS );
@@ -283,18 +265,22 @@ package body SPTEST is
);
TEXT_IO.PUT_LINE( "TA1 - task_resume - INCORRECT_STATE" );
--- RTEMS.TASK_SET_PRIORITY( RTEMS.SELF, 512, PREVIOUS_PRIORITY, STATUS );
--- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
--- STATUS,
--- RTEMS.INVALID_PRIORITY,
--- "TASK_SET_PRIORITY WITH ILLEGAL PRIORITY"
--- );
--- TEXT_IO.PUT_LINE(
--- "TA1 - task_set_priority - INVALID_PRIORITY"
--- );
- TEXT_IO.PUT_LINE(
- "TA1 - task_set_priority - INVALID_PRIORITY -- constraint error"
- );
+ begin
+ RTEMS.TASK_SET_PRIORITY( RTEMS.SELF, 512, PREVIOUS_PRIORITY, STATUS );
+ TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
+ STATUS,
+ RTEMS.INVALID_PRIORITY,
+ "TASK_SET_PRIORITY WITH ILLEGAL PRIORITY"
+ );
+ TEXT_IO.PUT_LINE(
+ "TA1 - task_set_priority - INVALID_PRIORITY"
+ );
+ exception
+ when others =>
+ TEXT_IO.PUT_LINE(
+ "TA1 - task_set_priority - INVALID_PRIORITY -- constraint error"
+ );
+ end;
RTEMS.TASK_SET_PRIORITY( 100, 8, PREVIOUS_PRIORITY, STATUS );
TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
@@ -304,20 +290,24 @@ package body SPTEST is
);
TEXT_IO.PUT_LINE( "TA1 - task_set_priority - INVALID_ID" );
--- RTEMS.TASK_SET_NOTE( RTEMS.SELF,
--- RTEMS.NOTEPAD_INDEX'LAST + 10,
--- NOTEPAD_VALUE,
--- STATUS
--- );
--- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
--- STATUS,
--- RTEMS.INVALID_NUMBER,
--- "TASK_SET_NOTE WITH ILLEGAL NOTEPAD"
--- );
--- TEXT_IO.PUT_LINE( "TA1 - task_set_note - INVALID_NUMBER" );
- TEXT_IO.PUT_LINE(
- "TA1 - task_set_note - INVALID_NUMBER -- constraint error"
- );
+ begin
+ RTEMS.TASK_SET_NOTE( RTEMS.SELF,
+ RTEMS.NOTEPAD_INDEX'LAST + 10,
+ NOTEPAD_VALUE,
+ STATUS
+ );
+ TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
+ STATUS,
+ RTEMS.INVALID_NUMBER,
+ "TASK_SET_NOTE WITH ILLEGAL NOTEPAD"
+ );
+ TEXT_IO.PUT_LINE( "TA1 - task_set_note - INVALID_NUMBER" );
+ exception
+ when others =>
+ TEXT_IO.PUT_LINE(
+ "TA1 - task_set_note - INVALID_NUMBER -- constraint error"
+ );
+ end;
RTEMS.TASK_SET_NOTE(
100,
@@ -583,7 +573,7 @@ package body SPTEST is
RTEMS.TASK_CREATE(
TASK_NAME,
1,
- RTEMS.CONFIGURATION.WORK_SPACE_SIZE,
+ TEST_SUPPORT.WORK_SPACE_SIZE,
RTEMS.DEFAULT_MODES,
RTEMS.DEFAULT_ATTRIBUTES,
SPTEST.JUNK_ID,
@@ -762,20 +752,22 @@ package body SPTEST is
);
TEXT_IO.PUT_LINE( "TA1 - task_create - 11 - TOO_MANY" );
- RTEMS.TASK_CREATE(
- TASK_NAME,
- 4,
- 2048,
- RTEMS.DEFAULT_MODES,
- RTEMS.GLOBAL,
- SPTEST.JUNK_ID,
- STATUS
- );
- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
- STATUS,
- RTEMS.MP_NOT_CONFIGURED,
- "TASK_CREATE OF GLOBAL TASK IN SINGLE CPU SYSTEM"
- );
+ if TEST_SUPPORT.Is_Configured_Multiprocessing then
+ RTEMS.TASK_CREATE(
+ TASK_NAME,
+ 4,
+ 2048,
+ RTEMS.DEFAULT_MODES,
+ RTEMS.GLOBAL,
+ SPTEST.JUNK_ID,
+ STATUS
+ );
+ TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
+ STATUS,
+ RTEMS.MP_NOT_CONFIGURED,
+ "TASK_CREATE OF GLOBAL TASK IN SINGLE CPU SYSTEM"
+ );
+ end if;
TEXT_IO.PUT_LINE( "TA1 - task_create - MP_NOT_CONFIGURED" );
end SCREEN_3;
@@ -911,7 +903,7 @@ package body SPTEST is
RTEMS.SEMAPHORE_CREATE(
SPTEST.SEMAPHORE_NAME( 2 ),
1,
- RTEMS.BINARY_SEMAPHORE,
+ (RTEMS.BINARY_SEMAPHORE or RTEMS.PRIORITY or RTEMS.INHERIT_PRIORITY),
RTEMS.NO_PRIORITY,
SPTEST.SEMAPHORE_ID( 2 ),
STATUS
@@ -987,19 +979,21 @@ package body SPTEST is
);
TEXT_IO.PUT_LINE("TA1 - semaphore_create - INVALID_NUMBER");
- RTEMS.SEMAPHORE_CREATE(
- SPTEST.SEMAPHORE_NAME( 3 ),
- 1,
- RTEMS.GLOBAL,
- RTEMS.NO_PRIORITY,
- SPTEST.JUNK_ID,
- STATUS
- );
- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
- STATUS,
- RTEMS.MP_NOT_CONFIGURED,
- "SEMAPHORE_CREATE OF MP_NOT_CONFIGURED"
- );
+ if TEST_SUPPORT.Is_Configured_Multiprocessing then
+ RTEMS.SEMAPHORE_CREATE(
+ SPTEST.SEMAPHORE_NAME( 3 ),
+ 1,
+ RTEMS.GLOBAL,
+ RTEMS.NO_PRIORITY,
+ SPTEST.JUNK_ID,
+ STATUS
+ );
+ TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
+ STATUS,
+ RTEMS.MP_NOT_CONFIGURED,
+ "SEMAPHORE_CREATE OF MP_NOT_CONFIGURED"
+ );
+ end if;
TEXT_IO.PUT_LINE("TA1 - semaphore_create - MP_NOT_CONFIGURED");
RTEMS.SEMAPHORE_DELETE( 100, STATUS );
@@ -1239,19 +1233,21 @@ package body SPTEST is
"TA1 - message_queue_create - Q 1 - INVALID_NAME"
);
- RTEMS.MESSAGE_QUEUE_CREATE(
- SPTEST.QUEUE_NAME( 1 ),
- 1,
- 16,
- RTEMS.GLOBAL,
- SPTEST.JUNK_ID,
- STATUS
- );
- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
- STATUS,
- RTEMS.MP_NOT_CONFIGURED,
- "MESSAGE_QUEUE_CREATE OF MP NOT CONFIGURED"
- );
+ if TEST_SUPPORT.Is_Configured_Multiprocessing then
+ RTEMS.MESSAGE_QUEUE_CREATE(
+ SPTEST.QUEUE_NAME( 1 ),
+ 1,
+ 16,
+ RTEMS.GLOBAL,
+ SPTEST.JUNK_ID,
+ STATUS
+ );
+ TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
+ STATUS,
+ RTEMS.MP_NOT_CONFIGURED,
+ "MESSAGE_QUEUE_CREATE OF MP NOT CONFIGURED"
+ );
+ end if;
TEXT_IO.PUT_LINE(
"TA1 - message_queue_create - Q 1 - MP_NOT_CONFIGURED");
@@ -1643,56 +1639,10 @@ package body SPTEST is
procedure SCREEN_9
is
- CONVERTED : RTEMS.ADDRESS;
- STATUS : RTEMS.STATUS_CODES;
- OLD_SERVICE_ROUTINE : RTEMS.ADDRESS;
+ CONVERTED : RTEMS.ADDRESS;
+ STATUS : RTEMS.STATUS_CODES;
begin
--- RTEMS.INTERRUPT_CATCH(
--- SPTEST.SERVICE_ROUTINE'ACCESS,
--- 500,
--- OLD_SERVICE_ROUTINE,
--- STATUS
--- );
--- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
--- STATUS,
--- RTEMS.INVALID_NUMBER,
--- "INTERRUPT_CATCH WITH INVALID VECTOR"
--- );
--- TEXT_IO.PUT_LINE( "TA1 - interrupt_catch - INVALID_NUMBER" );
- TEXT_IO.PUT_LINE(
- "TA1 - interrupt_catch - INVALID_NUMBER -- constraint error"
- );
-
- RTEMS.INTERRUPT_CATCH(
- RTEMS.NULL_ADDRESS,
- 3,
- OLD_SERVICE_ROUTINE,
- STATUS
- );
- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
- STATUS,
- RTEMS.INVALID_ADDRESS,
- "INTERRUPT_CATCH WITH INVALID HANDLER"
- );
- TEXT_IO.PUT_LINE( "TA1 - interrupt_catch - INVALID_ADDRESS" );
-
- RTEMS.SIGNAL_SEND( 100, RTEMS.SIGNAL_1, STATUS );
- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
- STATUS,
- RTEMS.INVALID_ID,
- "SIGNAL_SEND WITH ILLEGAL ID"
- );
- TEXT_IO.PUT_LINE( "TA1 - signal_send - INVALID_ID" );
-
- RTEMS.SIGNAL_SEND( RTEMS.SELF, RTEMS.SIGNAL_16, STATUS );
- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
- STATUS,
- RTEMS.NOT_DEFINED,
- "SIGNAL_SEND WITH NO HANDLER"
- );
- TEXT_IO.PUT_LINE( "TA1 - signal_send - NOT_DEFINED" );
-
RTEMS.PORT_CREATE(
0,
SPTEST.INTERNAL_PORT_AREA'ADDRESS,
@@ -2077,20 +2027,22 @@ package body SPTEST is
"TA1 - partition_create - length < buffer size - INVALID_SIZE"
);
- RTEMS.PARTITION_CREATE(
- SPTEST.PARTITION_NAME( 1 ),
- SPTEST.PARTITION_GOOD_AREA'ADDRESS,
- 128,
- 64,
- RTEMS.GLOBAL,
- SPTEST.JUNK_ID,
- STATUS
- );
- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
- STATUS,
- RTEMS.MP_NOT_CONFIGURED,
- "PARTITION_CREATE OF GLOBAL"
- );
+ if TEST_SUPPORT.Is_Configured_Multiprocessing then
+ RTEMS.PARTITION_CREATE(
+ SPTEST.PARTITION_NAME( 1 ),
+ SPTEST.PARTITION_GOOD_AREA'ADDRESS,
+ 128,
+ 64,
+ RTEMS.GLOBAL,
+ SPTEST.JUNK_ID,
+ STATUS
+ );
+ TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
+ STATUS,
+ RTEMS.MP_NOT_CONFIGURED,
+ "PARTITION_CREATE OF GLOBAL"
+ );
+ end if;
TEXT_IO.PUT_LINE("TA1 - partition_create - MP_NOT_CONFIGURED");
RTEMS.PARTITION_CREATE(
@@ -2323,7 +2275,7 @@ package body SPTEST is
RTEMS.REGION_CREATE(
SPTEST.REGION_NAME( 1 ),
SPTEST.REGION_GOOD_AREA'ADDRESS,
- 16#40#,
+ 34,
34,
RTEMS.DEFAULT_ATTRIBUTES,
SPTEST.JUNK_ID,
@@ -2653,89 +2605,6 @@ package body SPTEST is
TIME : RTEMS.TIME_OF_DAY;
STATUS : RTEMS.STATUS_CODES;
begin
-
- RTEMS.IO_CLOSE(
- RTEMS.DEVICE_MAJOR_NUMBER'LAST,
- 0,
- RTEMS.NULL_ADDRESS,
- STATUS
- );
- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
- STATUS,
- RTEMS.INVALID_NUMBER,
- "IO_CLOSE WITH BAD MAJOR NUMBER"
- );
- TEXT_IO.PUT_LINE("TA1 - io_close - INVALID_NUMBER");
-
- RTEMS.IO_CONTROL(
- RTEMS.DEVICE_MAJOR_NUMBER'LAST,
- 0,
- RTEMS.NULL_ADDRESS,
- STATUS
- );
- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
- STATUS,
- RTEMS.INVALID_NUMBER,
- "IO_CONTROL WITH BAD MAJOR NUMBER"
- );
- TEXT_IO.PUT_LINE(
- "TA1 - io_control - INVALID_NUMBER"
- );
-
- RTEMS.IO_INITIALIZE(
- RTEMS.DEVICE_MAJOR_NUMBER'LAST,
- 0,
- RTEMS.NULL_ADDRESS,
- STATUS
- );
- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
- STATUS,
- RTEMS.INVALID_NUMBER,
- "IO_INITIALIZE WITH BAD MAJOR NUMBER"
- );
- TEXT_IO.PUT_LINE(
- "TA1 - io_initialize - INVALID_NUMBER"
- );
-
- RTEMS.IO_OPEN(
- RTEMS.DEVICE_MAJOR_NUMBER'LAST,
- 0,
- RTEMS.NULL_ADDRESS,
- STATUS
- );
- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
- STATUS,
- RTEMS.INVALID_NUMBER,
- "IO_OPEN WITH BAD MAJOR NUMBER"
- );
- TEXT_IO.PUT_LINE( "TA1 - io_open - INVALID_NUMBER" );
-
- RTEMS.IO_READ(
- RTEMS.DEVICE_MAJOR_NUMBER'LAST,
- 0,
- RTEMS.NULL_ADDRESS,
- STATUS
- );
- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
- STATUS,
- RTEMS.INVALID_NUMBER,
- "IO_READ WITH BAD MAJOR NUMBER"
- );
- TEXT_IO.PUT_LINE( "TA1 - io_read - INVALID_NUMBER" );
-
- RTEMS.IO_WRITE(
- RTEMS.DEVICE_MAJOR_NUMBER'LAST,
- 0,
- RTEMS.NULL_ADDRESS,
- STATUS
- );
- TEST_SUPPORT.FATAL_DIRECTIVE_STATUS(
- STATUS,
- RTEMS.INVALID_NUMBER,
- "IO_WRITE WITH BAD MAJOR NUMBER"
- );
- TEXT_IO.PUT_LINE( "TA1 - io_write - INVALID_NUMBER" );
-
TIME := ( 2000, 12, 31, 23, 59, 59, 0 );
RTEMS.CLOCK_SET( TIME, STATUS );
TEST_SUPPORT.DIRECTIVE_FAILED( STATUS, "CLOCK_SET SUCCESSFUL" );