Added silc_time_epoch, converting SilcTime to Epoch time value
[runtime.git] / lib / silcutil / tests / test_silctime.c
index 822899019393d2ee190756293556152a002e9e3e..bdf1475b1f0de7e91d2acbf8bffea331ed63cdd3 100644 (file)
@@ -7,6 +7,7 @@ int main(int argc, char **argv)
   SilcBool success = FALSE;
   SilcTimeStruct curtime;
   unsigned char ts[32];
+  SilcUInt64 val1, val2;
 
   if (argc > 1 && !strcmp(argv[1], "-d")) {
     silc_log_debug(TRUE);
@@ -30,11 +31,46 @@ int main(int argc, char **argv)
   SILC_LOG_DEBUG(("utc_east  : %d", curtime.utc_east));
   SILC_LOG_DEBUG(("dst       : %d", curtime.dst));
 
+
   silc_time_universal_string(&curtime, ts, sizeof(ts));
   SILC_LOG_DEBUG(("Universal: %s", ts));
   silc_time_generalized_string(&curtime, ts, sizeof(ts));
   SILC_LOG_DEBUG(("Generaliz: %s", ts));
 
+
+  val1 = silc_time();
+  SILC_LOG_DEBUG(("Time: %llu", val1));
+  if (!silc_time_value(val1 * 1000, &curtime))
+    goto err;
+  SILC_LOG_DEBUG(("year      : %d", curtime.year));
+  SILC_LOG_DEBUG(("month     : %d", curtime.month));
+  SILC_LOG_DEBUG(("day       : %d", curtime.day));
+  SILC_LOG_DEBUG(("hour      : %d", curtime.hour));
+  SILC_LOG_DEBUG(("minute    : %d", curtime.minute));
+  SILC_LOG_DEBUG(("second    : %d", curtime.second));
+  SILC_LOG_DEBUG(("msecond   : %d", curtime.msecond));
+  SILC_LOG_DEBUG(("utc_hour  : %d", curtime.utc_hour));
+  SILC_LOG_DEBUG(("utc_min   : %d", curtime.utc_minute));
+  SILC_LOG_DEBUG(("utc_east  : %d", curtime.utc_east));
+  SILC_LOG_DEBUG(("dst       : %d", curtime.dst));
+  val2 = silc_time_epoch(&curtime);
+  SILC_LOG_DEBUG(("Time: %llu", val2));
+  if (!silc_time_value(val2 * 1000, &curtime))
+    goto err;
+  SILC_LOG_DEBUG(("year      : %d", curtime.year));
+  SILC_LOG_DEBUG(("month     : %d", curtime.month));
+  SILC_LOG_DEBUG(("day       : %d", curtime.day));
+  SILC_LOG_DEBUG(("hour      : %d", curtime.hour));
+  SILC_LOG_DEBUG(("minute    : %d", curtime.minute));
+  SILC_LOG_DEBUG(("second    : %d", curtime.second));
+  SILC_LOG_DEBUG(("msecond   : %d", curtime.msecond));
+  SILC_LOG_DEBUG(("utc_hour  : %d", curtime.utc_hour));
+  SILC_LOG_DEBUG(("utc_min   : %d", curtime.utc_minute));
+  SILC_LOG_DEBUG(("utc_east  : %d", curtime.utc_east));
+  SILC_LOG_DEBUG(("dst       : %d", curtime.dst));
+  if (val1 != val2)
+    goto err;
+
   success = TRUE;
 
  err: