avoid failing hard if 'gnunetcheck' db does not exist
[oweals/gnunet.git] / src / util / test_time.c
index b4ee3bfd7549a18ecd01fb6b2beada6e30c62382..6f4a6332b86245544f259cc9f10388cdaf477813 100644 (file)
@@ -1,9 +1,9 @@
 /*
      This file is part of GNUnet.
-     Copyright (C) 2001-2013 GNUnet e.V.
+     Copyright (C) 2001-2013, 2018 GNUnet e.V.
 
      GNUnet is free software: you can redistribute it and/or modify it
-     under the terms of the GNU General Public License as published
+     under the terms of the GNU Affero General Public License as published
      by the Free Software Foundation, either version 3 of the License,
      or (at your option) any later version.
 
      WITHOUT ANY WARRANTY; without even the implied warranty of
      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
      Affero General Public License for more details.
+    
+     You should have received a copy of the GNU Affero General Public License
+     along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+     SPDX-License-Identifier: AGPL3.0-or-later
 */
 /**
  * @file util/test_time.c
@@ -220,7 +225,28 @@ main (int argc, char *argv[])
   /*check  GNUNET_TIME_absolute_max */
   GNUNET_assert (now.abs_value_us ==
                  GNUNET_TIME_absolute_max (now, last).abs_value_us);
-
+  for (unsigned int i=0;i<30;i++)
+  {
+    struct GNUNET_CONFIGURATION_Handle *cfg;
+
+    cfg = GNUNET_CONFIGURATION_create ();
+    last = GNUNET_TIME_absolute_get_monotonic (cfg);
+    now = GNUNET_TIME_absolute_get_monotonic (cfg);
+    GNUNET_assert (now.abs_value_us > last.abs_value_us);
+    (void) GNUNET_TIME_absolute_get_monotonic (NULL);
+    GNUNET_CONFIGURATION_set_value_string (cfg,
+                                          "util",
+                                          "MONOTONIC_TIME_FILENAME",
+                                          "monotonic-time.dat");
+    last = GNUNET_TIME_absolute_get_monotonic (cfg);
+    now = GNUNET_TIME_absolute_get_monotonic (cfg);
+    (void) GNUNET_TIME_absolute_get_monotonic (NULL);
+    GNUNET_assert (now.abs_value_us > last.abs_value_us);
+    GNUNET_CONFIGURATION_destroy (cfg);
+  }
+  GNUNET_break (GNUNET_OK ==
+               GNUNET_DISK_directory_remove ("monotonic-time.dat"));
+  
   return 0;
 }