#! /usr/local/bin/perl

do "../src/unctime.perl" ||
  die "can't do unctime.perl";

#
# date --> timestamp --> date ; compare
#

printf("date --> timestamp --> date ; compare\n");

@date_list = ("Sat Dec  1 19:19:29 1990",
	      "Sat Dec  1 19:21:44 1990",
	      "Sat Dec  1 19:49:27 1990",
	      "Sat Dec  1 20:58:45 1990",
	      "Sat Dec  1 21:00:48 1990",
	      "Sat Dec  1 21:30:37 1990",
	      "Sat Dec 15 12:29:15 1990",
	      "Sat Dec 15 12:31:04 1990",
	      "Sat Dec 15 12:32:40 1990",
	      "Sat Dec 15 13:44:13 1990",
	      "Sat Dec 15 13:44:34 1990",
	      "Sat Dec 15 13:46:13 1990",
	      "Sat Dec 15 13:46:46 1990",
	      "Sat Dec 15 13:48:04 1990",
	      "Sat Dec 15 13:48:55 1990",
	      "Sat Dec 15 14:21:14 1990",
	      "Sat Dec 15 14:23:07 1990",
	      "Sat Dec 15 14:24:21 1990",
	      "Sat Nov 24 19:18:01 1990",
	      "Sat Nov 24 19:20:26 1990",
	      "Sat Nov 24 19:49:52 1990",
	      "Sat Nov 24 21:01:01 1990",
	      "Sat Nov 24 21:04:27 1990",
	      "Sat Nov 24 21:38:47 1990",
	      "Thu Aug  2 22:15:58 1990",
	      "Thu Aug  2 22:15:58 1990",
	      "Thu Aug  2 22:15:58 1990",
	      "Thu Aug  2 22:15:58 1990",
	      "Thu Aug  2 22:36:58 1990",
	      "Thu Aug  2 22:36:58 1990",
	      "Thu Aug  2 22:36:58 1990",
	      "Thu Aug  2 22:36:58 1990",
	      "Tue Dec 18 08:28:52 1990",
	      "Tue Dec 18 08:33:20 1990",
	      "Tue Dec 18 08:34:08 1990",
	      "Tue Dec 18 08:52:45 1990",
	      "Tue Dec 18 08:54:33 1990",
	      "Tue Dec 18 20:38:29 1990",
	      "Tue Dec 18 20:47:18 1990",
	      "Tue Dec 18 20:50:46 1990",
	      "Wed Dec 19 08:25:03 1990",
	      "Wed Dec 19 08:25:56 1990",
	      "Wed Dec 19 08:27:02 1990",
	      "Wed Dec 19 09:49:26 1990");

$success = 0;
$trials = 0;

foreach $before (@date_list) {
    $ts = &unctime($before);
    $after = &ctime($ts);
    chop($after);

    $trials++;

    if ($before eq $after) {
	$success++;
    } else {
	printf("before '%s'\tts %d\tafter '%s'\n",
	       $before,
	       $ts,
	       $after);
    }
}

printf("%d successes, %d trials\n",
       $success,
       $trials);

#
# timestamp --> date --> timestamp ; compare
#

printf("timestamp --> date --> timestamp ; compare\n");

@ts_list = (
	    661624778,
	    61624778,
	    1624778,
	    624778,
	    24778,
	    4778,
	    778,
	    78,
	    6716547478,
	    7834877361,
	    8762378,
	    8762762378,
	    1876128763,
	    12,
	    123876239,
	    0,
	    -1);

$success = 0;
$trials = 0;

foreach $before (@ts_list) {
    $date = &ctime($before);
    chop($date);
    $after = &unctime($date);

    $trials++;

    if ($before == $after) {
	$success++;
    } else {
	printf("before %lx \t date %s \t after %lx\n",
	       $before,
	       $date,
	       $after);
    }
}

printf("%d successes, %d trials\n",
       $success,
       $trials);

#
# Test &time_period...
#

printf("test time_period...\n");

@ts_list = (
	    0,
	    10,
	    59,
	    60,
	    120,
	    867,
	    1652,
	    3487634);

foreach $timestamp (@ts_list) {
    printf("timestamp %10d result '%s'\n",
	   $timestamp,
	   &time_period($timestamp));
}


