avoid failing hard if 'gnunetcheck' db does not exist
[oweals/gnunet.git] / src / util / test_time.c
index 57dd50caff5398493eea890965193a7d64e68289..6f4a6332b86245544f259cc9f10388cdaf477813 100644 (file)
@@ -1,21 +1,21 @@
 /*
      This file is part of GNUnet.
-     (C) 2001-2013 Christian Grothoff (and other contributing authors)
+     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
-     by the Free Software Foundation; either version 3, or (at your
-     option) any later version.
+     GNUnet is free software: you can redistribute it and/or modify it
+     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.
 
      GNUnet is distributed in the hope that it will be useful, but
      WITHOUT ANY WARRANTY; without even the implied warranty of
      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-     General Public License for more details.
+     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/>.
 
-     You should have received a copy of the GNU General Public License
-     along with GNUnet; see the file COPYING.  If not, write to the
-     Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-     Boston, MA 02111-1307, USA.
+     SPDX-License-Identifier: AGPL3.0-or-later
 */
 /**
  * @file util/test_time.c
@@ -225,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;
 }