From 60735a304ccc62ca77ef694342844f8dcd779cab Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Mon, 4 Feb 2008 17:16:56 +0000 Subject: 2008-02-04 Joel Sherrill * sp43/init.c, sp43/sp43.scn: Exercise passing as object Id of SELF. --- testsuites/sptests/ChangeLog | 4 ++++ testsuites/sptests/sp43/init.c | 43 ++++++++++++++++++++++++++++++---------- testsuites/sptests/sp43/sp43.scn | 14 ++++++++++--- 3 files changed, 47 insertions(+), 14 deletions(-) (limited to 'testsuites/sptests') diff --git a/testsuites/sptests/ChangeLog b/testsuites/sptests/ChangeLog index 16dfdce25b..0c3830f86e 100644 --- a/testsuites/sptests/ChangeLog +++ b/testsuites/sptests/ChangeLog @@ -1,3 +1,7 @@ +2008-02-04 Joel Sherrill + + * sp43/init.c, sp43/sp43.scn: Exercise passing as object Id of SELF. + 2008-01-31 Joel Sherrill * sp01/init.c, sp02/init.c, sp03/init.c, sp04/init.c, sp05/init.c, diff --git a/testsuites/sptests/sp43/init.c b/testsuites/sptests/sp43/init.c index c13815834c..21b29ec8d7 100644 --- a/testsuites/sptests/sp43/init.c +++ b/testsuites/sptests/sp43/init.c @@ -48,6 +48,7 @@ void print_class_info( } void change_name( + rtems_id id, const char *newName, boolean printable ) @@ -72,15 +73,15 @@ void change_name( printf( ")\n" ); } - status = rtems_object_set_name( main_task, newName ); + status = rtems_object_set_name( id, newName ); directive_failed( status, "rtems_object_set_name" ); - status = rtems_object_get_classic_name( main_task, &main_name ); + status = rtems_object_get_classic_name( id, &main_name ); directive_failed( status, "rtems_object_get_classic_name" ); put_name( main_name, FALSE ); puts( " - name returned by rtems_object_get_classic_name" ); - ptr = rtems_object_get_name( main_task, 5, name ); + ptr = rtems_object_get_name( id, 5, name ); rtems_test_assert(ptr != NULL); printf( "rtems_object_get_name returned (%s) for init task\n", ptr ); } @@ -139,7 +140,12 @@ rtems_task Init( status = rtems_object_get_classic_name( main_task, &main_name ); directive_failed( status, "rtems_object_get_classic_name" ); put_name( main_name, FALSE ); - puts( " - name returned by rtems_object_get_classic_name" ); + puts( " - name returned by rtems_object_get_classic_name for Init task id" ); + + status = rtems_object_get_classic_name( RTEMS_SELF, &main_name ); + directive_failed( status, "rtems_object_get_classic_name" ); + put_name( main_name, FALSE ); + puts( " - name returned by rtems_object_get_classic_name for RTEMS_SELF" ); tmpName = rtems_build_name( 'T', 'E', 'M', 'P' ); put_name( tmpName, FALSE ); @@ -171,7 +177,11 @@ rtems_task Init( ptr = rtems_object_get_name( main_task, 5, name ); rtems_test_assert(ptr != NULL); - printf( "rtems_object_get_name returned (%s) for init task\n", ptr ); + printf( "rtems_object_get_name returned (%s) for init task id\n", ptr ); + + ptr = rtems_object_get_name( RTEMS_SELF, 5, name ); + rtems_test_assert(ptr != NULL); + printf( "rtems_object_get_name returned (%s) for RTEMS_SELF\n", ptr ); /* * rtems_object_set_name - errors @@ -200,17 +210,28 @@ rtems_task Init( * This is strange but pushes the SuperCore code to do different things. */ - change_name( "New1", TRUE ); - change_name( "Ne1", TRUE ); - change_name( "N1", TRUE ); - change_name( "N", TRUE ); - change_name( "", TRUE ); + change_name( main_task, "New1", TRUE ); + change_name( main_task, "Ne1", TRUE ); + change_name( main_task, "N1", TRUE ); + change_name( main_task, "N", TRUE ); + change_name( main_task, "", TRUE ); tmpNameString[0] = 'N'; tmpNameString[1] = 0x07; tmpNameString[2] = 0x09; tmpNameString[3] = '1'; tmpNameString[4] = '\0'; - change_name( tmpNameString, FALSE ); + change_name( main_task, tmpNameString, FALSE ); + + /* + * Change object name using SELF ID + */ + + change_name( RTEMS_SELF, "SELF", TRUE ); + + ptr = rtems_object_get_name( main_task, 5, name ); + rtems_test_assert(ptr != NULL); + printf( "rtems_object_get_name returned (%s) for init task id\n", ptr ); + /* * Exercise id build and extraction routines diff --git a/testsuites/sptests/sp43/sp43.scn b/testsuites/sptests/sp43/sp43.scn index 865ba9571e..bd4134fe23 100644 --- a/testsuites/sptests/sp43/sp43.scn +++ b/testsuites/sptests/sp43/sp43.scn @@ -1,15 +1,19 @@ + + *** TEST 43 *** rtems_object_get_classic_name - INVALID_ADDRESS rtems_object_get_classic_name - INVALID_ID (bad index) rtems_object_get_classic_name - INVALID_ID (unallocated index) rtems_object_get_classic_name - INVALID_ID (bad API) -UI1 - name returned by rtems_object_get_classic_name +UI1 - name returned by rtems_object_get_classic_name for Init task id +UI1 - name returned by rtems_object_get_classic_name for RTEMS_SELF TEMP - rtems_build_name for TEMP rtems_object_get_name - bad id for class with instances rtems_object_get_name - bad id for class without instances rtems_object_get_name - bad length rtems_object_get_name - bad pointer -rtems_object_get_name returned (UI1 ) for init task +rtems_object_get_name returned (UI1 ) for init task id +rtems_object_get_name returned (UI1 ) for RTEMS_SELF rtems_object_set_name - INVALID_ID (bad API) rtems_object_set_name - INVALID_ID (bad index) rtems_object_set_name - change name of init task to (New1) @@ -27,9 +31,13 @@ rtems_object_get_name returned (N) for init task rtems_object_set_name - change name of init task to () * - name returned by rtems_object_get_classic_name rtems_object_get_name returned () for init task -rtems_object_set_name - change name of init task to (N-0x07-0x09-1) +rtems_object_set_name - change name of init task to (N-- -1) N**1 - name returned by rtems_object_get_classic_name rtems_object_get_name returned (N**1) for init task +rtems_object_set_name - change name of init task to (SELF) +SELF - name returned by rtems_object_get_classic_name +rtems_object_get_name returned (SELF) for init task +rtems_object_get_name returned (SELF) for init task id rtems_build_id - build an id to match init task rtems_object_id_get_api - OK rtems_object_id_get_class - OK -- cgit v1.2.3