summaryrefslogtreecommitdiffstats
path: root/testsuites/psxtests/psx10
diff options
context:
space:
mode:
Diffstat (limited to 'testsuites/psxtests/psx10')
-rw-r--r--testsuites/psxtests/psx10/init.c312
-rw-r--r--testsuites/psxtests/psx10/psx10.scn60
-rw-r--r--testsuites/psxtests/psx10/system.h69
-rw-r--r--testsuites/psxtests/psx10/task.c65
-rw-r--r--testsuites/psxtests/psx10/task2.c47
-rw-r--r--testsuites/psxtests/psx10/task3.c46
6 files changed, 0 insertions, 599 deletions
diff --git a/testsuites/psxtests/psx10/init.c b/testsuites/psxtests/psx10/init.c
deleted file mode 100644
index b4461d5abe..0000000000
--- a/testsuites/psxtests/psx10/init.c
+++ /dev/null
@@ -1,312 +0,0 @@
-/*
- * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
- * On-Line Applications Research Corporation (OAR).
- * All rights assigned to U.S. Government, 1994.
- *
- * This material may be reproduced by or for the U.S. Government pursuant
- * to the copyright license under the clause at DFARS 252.227-7013. This
- * notice must appear in all copies of this file and its derivatives.
- *
- * $Id$
- */
-
-#define CONFIGURE_INIT
-#include "system.h"
-#include <sched.h>
-
-
-void *POSIX_Init(
- void *argument
-)
-{
- int status;
- pthread_condattr_t attr;
- pthread_condattr_t attr_error;
- int pshared;
- pthread_cond_t cond;
- struct timespec timeout;
-
- puts( "\n\n*** POSIX TEST 10 ***" );
-
- puts( "Init: pthread_condattr_init" );
- status = pthread_condattr_init( &attr );
- assert( !status );
-
- puts( "Init: pthread_condattr_init - EINVAL (attribute invalid)" );
- status = pthread_condattr_init( NULL );
- if ( status != EINVAL )
- printf( "status = %d\n", status );
- assert( status == EINVAL );
-
- puts( "Init: pthread_condattr_destroy" );
- status = pthread_condattr_destroy( &attr );
- assert( !status );
-
- puts( "Init: pthread_condattr_destroy - EINVAL (attribute invalid)" );
- status = pthread_condattr_destroy( NULL );
- if ( status != EINVAL )
- printf( "status = %d\n", status );
- assert( status == EINVAL );
-
- puts( "Init: pthread_condattr_init" );
- status = pthread_condattr_init( &attr );
- assert( !status );
-
- puts( "Init: pthread_condattr_setpshared - PTHREAD_PROCESS_SHARED" );
- status = pthread_condattr_setpshared( &attr, PTHREAD_PROCESS_SHARED );
- assert( !status );
-
- puts( "Init: pthread_condattr_setpshared - PTHREAD_PROCESS_PRIVATE" );
- status = pthread_condattr_setpshared( &attr, PTHREAD_PROCESS_PRIVATE );
- assert( !status );
-
- status = pthread_condattr_setpshared( NULL, PTHREAD_PROCESS_PRIVATE );
- if ( status != EINVAL )
- printf( "status = %d\n", status );
- assert( status == EINVAL );
- puts( "Init: pthread_condattr_setpshared - EINVAL (attribute invalid)" );
-
- status = pthread_condattr_setpshared( &attr, 0xFFFFFF );
- if ( status != EINVAL )
- printf( "status = %d\n", status );
- assert( status == EINVAL );
- puts( "Init: pthread_condattr_setpshared - EINVAL (pshared invalid)" );
-
- status = pthread_condattr_getpshared( &attr, &pshared );
- assert( !status );
- printf( "Init: pthread_condattr_getpshared - %d\n", pshared );
-
- status = pthread_condattr_getpshared( NULL, &pshared );
- if ( status != EINVAL )
- printf( "status = %d\n", status );
- assert( status == EINVAL );
- puts( "Init: pthread_condattr_getpshared - EINVAL (attribute invalid)" );
-
- puts( "Init: pthread_cond_init - NULL attr" );
- status = pthread_cond_init( &cond, NULL );
- assert( !status );
-
-/* error for attribute not initialized */
-
- attr_error.is_initialized = FALSE;
- status = pthread_cond_init( &cond, &attr_error );
- if ( status != EINVAL )
- printf( "status = %d\n", status );
- assert( status == EINVAL );
- puts( "Init: pthread_cond_init - EINVAL (attr not initialized)" );
-
- status = pthread_cond_init( &cond, NULL );
- if ( status != ENOMEM )
- printf( "status = %d\n", status );
- assert( status == ENOMEM );
- puts( "Init: pthread_cond_init - ENOMEM (too many conds)" );
-
- puts( "Init: pthread_cond_destroy" );
- status = pthread_cond_destroy( &cond );
- assert( !status );
-
-/* error for bad condition variable passed */
-
- status = pthread_cond_destroy( NULL );
- if ( status != EINVAL )
- printf( "status = %d\n", status );
- assert( status == EINVAL );
- puts( "Init: pthread_cond_destroy - EINVAL (cond invalid)" );
-
-/* initiailize the attribute for the rest of the test */
-
- puts( "Init: pthread_cond_init - attr" );
- status = pthread_cond_init( &Cond1_id, &attr );
- assert( !status );
-
-/* signal task1 with a condition variable */
-
- empty_line();
-
- status = pthread_create( &Task_id, NULL, Task_1, NULL );
- assert( !status );
-
-/* switch to task1 to allow it to wait for a condition variable */
-
- puts( "Init: sleep to switch to Task_1" );
- sleep( 1 );
-
- status = pthread_cond_destroy( &Cond1_id );
- if ( status != EBUSY )
- printf( "status = %d\n", status );
- assert( status == EBUSY );
- puts( "Init: pthread_cond_destroy - EBUSY (task1 waiting)" );
-
- puts( "Init: pthread_cond_signal" );
- status = pthread_cond_signal( &Cond1_id );
- assert( !status );
-
- empty_line();
-
- status = pthread_create( &Task2_id, NULL, Task_2, NULL );
- assert( !status );
-
-/* switch to task1 and task2 to allow them to wait for broadcast signal */
-
- puts( "Init: sleep - switch to Task_1 and Task_2" );
- sleep( 1 );
-
-/* broadcast a condition variable to task1 and task2 */
-
- puts( "Init: pthread_cond_broadcast" );
- status = pthread_cond_broadcast( &Cond1_id );
- assert( !status );
-
- puts( "Init: sleep - switch to Task_1" );
- sleep( 0 );
-
-/* timedwait case - timeout */
-
- status = pthread_mutex_lock( &Mutex_id );
- assert( !status );
-
-/* set timeout to 3 seconds */
-
- status = clock_gettime( CLOCK_REALTIME, &timeout );
- assert( !status );
- timeout.tv_sec += 3;
- timeout.tv_nsec = 0;
-
- puts( "Init: pthread_cond_timedwait for 3 seconds" );
- status = pthread_cond_timedwait( &Cond1_id, &Mutex_id, &timeout );
- if ( status != ETIMEDOUT )
- printf( "status = %d\n", status );
- assert( status == ETIMEDOUT );
- puts( "Init: pthread_cond_timedwait - ETIMEDOUT - (mutex not acquired)" );
-
- status = pthread_mutex_unlock( &Mutex_id );
- assert( !status );
-
-/* remaining error messages */
-
- empty_line();
-
-/* errors for bad variable passed */
-
- status = pthread_cond_signal( NULL );
- if ( status != EINVAL )
- printf( "status = %d\n", status );
- assert( status == EINVAL );
- puts( "Init: pthread_cond_signal - EINVAL (cond invalid)" );
-
- status = pthread_cond_broadcast( NULL );
- if ( status != EINVAL )
- printf( "status = %d\n", status );
- assert( status == EINVAL );
- puts( "Init: pthread_cond_broadcast - EINVAL (cond invalid)" );
-
-/* acquire mutex so errors will occur */
-
- status = pthread_mutex_lock( &Mutex_id );
- assert( !status );
-
- status = pthread_cond_wait( NULL, &Mutex_id );
- if ( status != EINVAL )
- printf( "status = %d\n", status );
- assert( status == EINVAL );
- puts( "Init: pthread_cond_wait - EINVAL (cond invalid)" );
-
- status = pthread_cond_timedwait( NULL, &Mutex_id, &timeout );
- if ( status != EINVAL )
- printf( "status = %d\n", status );
- assert( status == EINVAL );
- puts( "Init: pthread_cond_timedwait - EINVAL (cond invalid)" );
-
- status = pthread_cond_wait( &Cond1_id, NULL );
- if ( status != EINVAL )
- printf( "status = %d\n", status );
- assert( status == EINVAL );
- puts( "Init: pthread_cond_wait - EINVAL (mutex invalid)" );
-
- status = pthread_cond_timedwait( &Cond1_id, NULL, &timeout );
- if ( status != EINVAL )
- printf( "status = %d\n", status );
- assert( status == EINVAL );
- puts( "Init: pthread_cond_timedwait - EINVAL (mutex invalid)" );
-
- status = pthread_cond_timedwait( &Cond1_id, &Mutex_id, NULL );
- if ( status != EINVAL )
- printf( "status = %d\n", status );
- assert( status == EINVAL );
- puts( "Init: pthread_cond_timedwait - EINVAL (abstime NULL)" );
-
- status = clock_gettime( CLOCK_REALTIME, &timeout );
- assert( !status );
- timeout.tv_sec -= 1;
- status = pthread_cond_timedwait( &Cond1_id, &Mutex_id, &timeout );
- if ( status != ETIMEDOUT )
- printf( "status = %d\n", status );
- assert( status == ETIMEDOUT );
- puts( "Init: pthread_cond_timedwait - ETIMEDOUT (abstime->tv_sec < current time)" );
- status = pthread_mutex_unlock( &Mutex_id );
- assert( !status );
-
- status = pthread_mutex_lock( &Mutex_id );
- assert( !status );
- status = clock_gettime( CLOCK_REALTIME, &timeout );
- assert( !status );
- timeout.tv_nsec -= 1;
- status = pthread_cond_timedwait( &Cond1_id, &Mutex_id, &timeout );
- if ( status != ETIMEDOUT )
- printf( "status = %d\n", status );
- assert( status == ETIMEDOUT );
- puts( "Init: pthread_cond_timedwait - ETIMEDOUT (abstime->tv_nsec < current time)" );
- status = pthread_mutex_unlock( &Mutex_id );
- assert( !status );
-
-/* wait and timedwait without mutex */
-
-/* XXX - this case is commented out in the code pending review
- *
- * status = pthread_cond_wait( &Cond1_id, &Mutex_id );
- * if ( status != EINVAL )
- * printf( "status = %d\n", status );
- * assert( status == EINVAL );
- */
- puts( "Init: pthread_cond_wait - EINVAL (mutex not locked before call)" );
-
-/* XXX - this case is commented out in the code pending review
- *
- * status = clock_gettime( CLOCK_REALTIME, &timeout );
- * assert( !status );
- * timeout.tv_sec += 1;
- * status = pthread_cond_timedwait( &Cond1_id, &Mutex_id, &timeout );
- * if ( status != EINVAL )
- * printf( "status = %d\n", status );
- * assert( status == EINVAL );
- */
- puts( "Init: pthread_cond_timedwait - EINVAL (mutex not locked before call)");
-
- empty_line();
-
- status = pthread_create( &Task3_id, NULL, Task_3, NULL );
- assert( !status );
-
-/* switch to task3 to allow it to wait for broadcast signal */
-
- puts( "Init: sleep - switch to Task_3" );
- sleep( 1 );
-
-/* destroy the mutex so Task3 can not acguire at the end of Wait_support */
-
- status = pthread_mutex_destroy( &Mutex_id );
- assert( !status );
-
-/* signal a condition variable to task3 */
-
- puts( "Init: pthread_cond_signal" );
- status = pthread_cond_signal( &Cond1_id );
-
- puts( "Init: sleep - switch to Task_3" );
- sleep( 1 );
-
- puts( "*** END OF POSIX TEST 10 ***" );
- exit( 0 );
-
- return NULL; /* just so the compiler thinks we returned something */
-}
diff --git a/testsuites/psxtests/psx10/psx10.scn b/testsuites/psxtests/psx10/psx10.scn
deleted file mode 100644
index a19b9d8c49..0000000000
--- a/testsuites/psxtests/psx10/psx10.scn
+++ /dev/null
@@ -1,60 +0,0 @@
-*** POSIX TEST 10 ***
-Init: pthread_condattr_init
-Init: pthread_condattr_init - EINVAL (attribute invalid)
-Init: pthread_condattr_destroy
-Init: pthread_condattr_destroy - EINVAL (attribute invalid)
-Init: pthread_condattr_init
-Init: pthread_condattr_setpshared - PTHREAD_PROCESS_SHARED
-Init: pthread_condattr_setpshared - PTHREAD_PROCESS_PRIVATE
-Init: pthread_condattr_setpshared - EINVAL (attribute invalid)
-Init: pthread_condattr_setpshared - EINVAL (pshared invalid)
-Init: pthread_condattr_getpshared - 0
-Init: pthread_condattr_getpshared - EINVAL (attribute invalid)
-Init: pthread_cond_init - NULL attr
-Init: pthread_cond_init - EINVAL (attr not initialized)
-Init: pthread_cond_init - ENOMEM (too many conds)
-Init: pthread_cond_destroy
-Init: pthread_cond_destroy - EINVAL (cond invalid)
-Init: pthread_cond_init - attr
-
-Init: sleep to switch to Task_1
-Task_1: ID is 0x0c010002
-Task_1: pthread_cond_wait
-Init: pthread_cond_destroy - EBUSY (task1 waiting)
-Init: pthread_cond_signal
-
-Init: sleep - switch to Task_1 and Task_2
-Task_1: back from pthread_cond_wait release mutex
-Task_1: pthread_cond_wait
-Task_2: ID is 0x0c010003
-Task_2: pthread_cond_wait
-Init: pthread_cond_broadcast
-Init: sleep - switch to Task_1
-Task_1: back from pthread_cond_wait release mutex
-Task_1: task exit
-Task_2: back from pthread_cond_wait release mutex
-Task_2: task exit
-Init: pthread_cond_timedwait for 3 seconds
-Init: pthread_cond_timedwait - ETIMEDOUT - (mutex not acquired)
-
-Init: pthread_cond_signal - EINVAL (cond invalid)
-Init: pthread_cond_broadcast - EINVAL (cond invalid)
-Init: pthread_cond_wait - EINVAL (cond invalid)
-Init: pthread_cond_timedwait - EINVAL (cond invalid)
-Init: pthread_cond_wait - EINVAL (mutex invalid)
-Init: pthread_cond_timedwait - EINVAL (mutex invalid)
-Init: pthread_cond_timedwait - EINVAL (abstime NULL)
-Init: pthread_cond_timedwait - EINVAL (abstime->tv_sec invalid)
-Init: pthread_cond_timedwait - EINVAL (abstime->tv_nsec invalid)
-Init: pthread_cond_timedwait - EINVAL (abstime->tv_nsec to large)
-Init: pthread_cond_wait - EINVAL (mutex not locked before call)
-Init: pthread_cond_timedwait - EINVAL (mutex not locked before call)
-
-Init: sleep - switch to Task_3
-Task_3: ID is 0x0c010004
-Task_3: pthread_cond_wait
-Init: pthread_cond_signal
-Init: sleep - switch to Task_3
-Task_3: pthread_cond_wait - EINVAL (mutex not locked after signal)
-Task_3: task exit
-*** END OF POSIX TEST 10 ***
diff --git a/testsuites/psxtests/psx10/system.h b/testsuites/psxtests/psx10/system.h
deleted file mode 100644
index eae6660baf..0000000000
--- a/testsuites/psxtests/psx10/system.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/* system.h
- *
- * This include file contains information that is included in every
- * function in the test set.
- *
- * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
- * On-Line Applications Research Corporation (OAR).
- * All rights assigned to U.S. Government, 1994.
- *
- * This material may be reproduced by or for the U.S. Government pursuant
- * to the copyright license under the clause at DFARS 252.227-7013. This
- * notice must appear in all copies of this file and its derivatives.
- *
- * $Id$
- */
-
-/* functions */
-
-#include <pmacros.h>
-#include <unistd.h>
-#include <errno.h>
-
-void *POSIX_Init(
- void *argument
-);
-
-void *Task_1(
- void *argument
-);
-
-void *Task_2(
- void *argument
-);
-
-void *Task_3(
- void *argument
-);
-
-/* configuration information */
-
-#define CONFIGURE_SPTEST
-
-#define CONFIGURE_TEST_NEEDS_CONSOLE_DRIVER
-#define CONFIGURE_TEST_NEEDS_CLOCK_DRIVER
-
-#define CONFIGURE_POSIX_INIT_THREAD_TABLE
-
-#define CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES 1
-
-#define CONFIGURE_MAXIMUM_POSIX_MUTEXES 2
-
-#include <confdefs.h>
-
-/* global variables */
-
-#ifdef CONFIGURE_INIT
-#define TEST_EXTERN
-#else
-#define TEST_EXTERN extern
-#endif
-
-TEST_EXTERN pthread_t Init_id;
-TEST_EXTERN pthread_t Task_id;
-TEST_EXTERN pthread_t Task2_id;
-TEST_EXTERN pthread_t Task3_id;
-TEST_EXTERN pthread_cond_t Cond1_id;
-TEST_EXTERN pthread_mutex_t Mutex_id;
-
-/* end of include file */
diff --git a/testsuites/psxtests/psx10/task.c b/testsuites/psxtests/psx10/task.c
deleted file mode 100644
index f1bef38972..0000000000
--- a/testsuites/psxtests/psx10/task.c
+++ /dev/null
@@ -1,65 +0,0 @@
-/* Task_1
- *
- * This routine serves as a test task.
- *
- * Input parameters:
- * argument - task argument
- *
- * Output parameters: NONE
- *
- * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
- * On-Line Applications Research Corporation (OAR).
- * All rights assigned to U.S. Government, 1994.
- *
- * This material may be reproduced by or for the U.S. Government pursuant
- * to the copyright license under the clause at DFARS 252.227-7013. This
- * notice must appear in all copies of this file and its derivatives.
- *
- * $Id$
- */
-
-#include "system.h"
-
-void *Task_1(
- void *argument
-)
-{
- int status;
-
-/* wait for a condition variable signal from Init */
-
- Task_id = pthread_self();
- printf( "Task_1: ID is 0x%08x\n", Task_id );
-
- status = pthread_mutex_init( &Mutex_id, NULL );
- assert( !status );
-
- status = pthread_mutex_lock( &Mutex_id );
- assert( !status );
-
- puts( "Task_1: pthread_cond_wait" );
- status = pthread_cond_wait( &Cond1_id, &Mutex_id );
- assert( !status );
-
- puts( "Task_1: back from pthread_cond_wait release mutex" );
- status = pthread_mutex_unlock( &Mutex_id );
- assert( !status );
-
-/* wait for a condition variable broadcast from Init */
-
- status = pthread_mutex_lock( &Mutex_id );
- assert( !status );
-
- puts( "Task_1: pthread_cond_wait" );
- status = pthread_cond_wait( &Cond1_id, &Mutex_id );
- assert( !status );
-
- puts( "Task_1: back from pthread_cond_wait release mutex" );
- status = pthread_mutex_unlock( &Mutex_id );
- assert( !status );
-
- puts( "Task_1: task exit" );
- pthread_exit( NULL );
-
- return NULL; /* just so the compiler thinks we returned something */
-}
diff --git a/testsuites/psxtests/psx10/task2.c b/testsuites/psxtests/psx10/task2.c
deleted file mode 100644
index 1b1c03557e..0000000000
--- a/testsuites/psxtests/psx10/task2.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Task_2
- *
- * This routine serves as a test task.
- *
- * Input parameters:
- * argument - task argument
- *
- * Output parameters: NONE
- *
- * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
- * On-Line Applications Research Corporation (OAR).
- * All rights assigned to U.S. Government, 1994.
- *
- * This material may be reproduced by or for the U.S. Government pursuant
- * to the copyright license under the clause at DFARS 252.227-7013. This
- * notice must appear in all copies of this file and its derivatives.
- *
- * $Id$
- */
-
-#include "system.h"
-
-void *Task_2(
- void *argument
-)
-{
- int status;
-
- Task_id = pthread_self();
- printf( "Task_2: ID is 0x%08x\n", Task_id );
-
- status = pthread_mutex_lock( &Mutex_id );
- assert( !status );
-
- puts( "Task_2: pthread_cond_wait" );
- status = pthread_cond_wait( &Cond1_id, &Mutex_id );
- assert( !status );
-
- puts( "Task_2: back from pthread_cond_wait release mutex" );
- status = pthread_mutex_unlock( &Mutex_id );
- assert( !status );
-
- puts( "Task_2: task exit" );
- pthread_exit( NULL );
-
- return NULL; /* just so the compiler thinks we returned something */
-}
diff --git a/testsuites/psxtests/psx10/task3.c b/testsuites/psxtests/psx10/task3.c
deleted file mode 100644
index a2cfa63a6e..0000000000
--- a/testsuites/psxtests/psx10/task3.c
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Task_3
- *
- * This routine serves as a test task.
- *
- * Input parameters:
- * argument - task argument
- *
- * Output parameters: NONE
- *
- * COPYRIGHT (c) 1989, 1990, 1991, 1992, 1993, 1994.
- * On-Line Applications Research Corporation (OAR).
- * All rights assigned to U.S. Government, 1994.
- *
- * This material may be reproduced by or for the U.S. Government pursuant
- * to the copyright license under the clause at DFARS 252.227-7013. This
- * notice must appear in all copies of this file and its derivatives.
- *
- * $Id$
- */
-
-#include "system.h"
-
-void *Task_3(
- void *argument
-)
-{
- int status;
-
- Task_id = pthread_self();
- printf( "Task_3: ID is 0x%08x\n", Task_id );
-
- status = pthread_mutex_lock( &Mutex_id );
- assert( !status );
-
- puts( "Task_3: pthread_cond_wait" );
- status = pthread_cond_wait( &Cond1_id, &Mutex_id );
- if ( status != EINVAL )
- printf( "status = %d\n", status );
- assert( status == EINVAL );
- puts( "Task_3: pthread_cond_wait - EINVAL (mutex not locked after signal)");
-
- puts( "Task_3: task exit" );
- pthread_exit( NULL );
-
- return NULL; /* just so the compiler thinks we returned something */
-}