diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2007-03-13 19:31:29 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2007-03-13 19:31:29 +0000 |
commit | 3e1fada2e9affd5aa514d78ad01fd7e5842c161b (patch) | |
tree | 2cba422fa5c363f4a160b5eddce2f23d591b7366 /testsuites/libtests/tztest/init.c | |
parent | 2007-03-13 Joel Sherrill <joel@OARcorp.com> (diff) | |
download | rtems-3e1fada2e9affd5aa514d78ad01fd7e5842c161b.tar.bz2 |
2007-03-13 Joel Sherrill <joel@OARcorp.com>
* Makefile.am, configure.ac: Added timezone test.
* tztest/Makefile.am, tztest/init.c, tztest/tztest.doc,
tztest/tztest.scn: New files.
Diffstat (limited to 'testsuites/libtests/tztest/init.c')
-rw-r--r-- | testsuites/libtests/tztest/init.c | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/testsuites/libtests/tztest/init.c b/testsuites/libtests/tztest/init.c new file mode 100644 index 0000000000..82d6c634b9 --- /dev/null +++ b/testsuites/libtests/tztest/init.c @@ -0,0 +1,68 @@ +/* + * This routine is the initialization task of test to exercise some + * timezone functionality. + * + * COPYRIGHT (c) 2007. + * On-Line Applications Research Corporation (OAR). + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rtems.com/license/LICENSE. + * + * $Id$ + */ + +#include <tmacros.h> +#include <time.h> +#include <stdlib.h> + +void tztester(void) +{ + struct tm *tm; + time_t now; + + printf("TZ:\"%s\"\n", getenv("TZ")); + + time(&now); + tm = localtime(&now); + printf ("%4.4d-%2.2d-%2.2d %2.2d:%2.2d:%2.2d\n", + 1900+tm->tm_year, tm->tm_mon+1, tm->tm_mday, + tm->tm_hour, tm->tm_min, tm->tm_sec); + + tm = gmtime(&now); + printf ("%4.4d-%2.2d-%2.2d %2.2d:%2.2d:%2.2d\n", + 1900+tm->tm_year, tm->tm_mon+1, tm->tm_mday, + tm->tm_hour, tm->tm_min, tm->tm_sec); +} + +rtems_task Init( + rtems_task_argument argument +) +{ + rtems_time_of_day time; + rtems_status_code status; + + puts( "\n\n*** TIMEZONE TEST ***" ); + + build_time( &time, 3, 14, 2007, 15, 9, 26, 5 ); + status = rtems_clock_set( &time ); + directive_failed( status, "rtems_clock_set" ); + + setenv( "TZ", "CST6CDT,M 3.2.0,M 11.1.0", 1 ); + + tztester(); + + puts( "*** END OF TIMEZONE TEST ***" ); + exit(0); +} + + +#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER +#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER + +#define CONFIGURE_RTEMS_INIT_TASKS_TABLE +#define CONFIGURE_MAXIMUM_TASKS 1 + +#define CONFIGURE_INIT + +#include <rtems/confdefs.h> |