X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=src%2Futil%2Ftest_strings.c;h=b66474934b19dbc2c2ba4a3d2c8aeefc622a6825;hb=1ac9ef013b0e9c737d6909ab41a38b45a3d36e43;hp=e0c3cfebff1b298d40fd1e6e52eedc6c285d5d56;hpb=3d7fefedc9ba60bd8e8448efe8b628446d958536;p=oweals%2Fgnunet.git diff --git a/src/util/test_strings.c b/src/util/test_strings.c index e0c3cfebf..b66474934 100644 --- a/src/util/test_strings.c +++ b/src/util/test_strings.c @@ -1,6 +1,6 @@ /* This file is part of GNUnet. - (C) 2009 Christian Grothoff (and other contributing authors) + Copyright (C) 2009 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 @@ -14,16 +14,15 @@ 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. + Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. */ /** * @file util/test_strings.c * @brief testcase for strings.c */ #include "platform.h" -#include "gnunet_common.h" -#include "gnunet_strings_lib.h" +#include "gnunet_util_lib.h" #define WANT(a,b) if (0 != strcmp(a,b)) { fprintf(stderr, "Got `%s', wanted `%s'\n", b, a); GNUNET_free(b); GNUNET_break(0); return 1;} else { GNUNET_free (b); } @@ -100,13 +99,36 @@ main (int argc, char *argv[]) } b = GNUNET_STRINGS_to_utf8 ("TEST", 4, "ASCII"); WANT ("TEST", b); - + at = GNUNET_TIME_UNIT_FOREVER_ABS; bc = GNUNET_STRINGS_absolute_time_to_string (at); GNUNET_assert (GNUNET_OK == GNUNET_STRINGS_fancy_time_to_absolute (bc, &atx)); GNUNET_assert (atx.abs_value_us == at.abs_value_us); + at.abs_value_us = 50000000000; + bc = GNUNET_STRINGS_absolute_time_to_string (at); + + GNUNET_assert (GNUNET_OK == + GNUNET_STRINGS_fancy_time_to_absolute (bc, &atx)); + + if (atx.abs_value_us != at.abs_value_us) + { +#ifdef WINDOWS + DWORD tzv; + TIME_ZONE_INFORMATION tzi; + tzv = GetTimeZoneInformation (&tzi); + if (TIME_ZONE_ID_INVALID != tzv) + { + atx.abs_value_us -= 1000LL * 1000LL * tzi.Bias * 60LL; + } + if (atx.abs_value_us == at.abs_value_us) + fprintf (stderr, + "WARNING: GNUNET_STRINGS_fancy_time_to_absolute() miscalculates timezone!\n"); +#endif + GNUNET_assert (0); + } + GNUNET_log_skip (2, GNUNET_NO); b = GNUNET_STRINGS_to_utf8 ("TEST", 4, "unknown"); GNUNET_log_skip (0, GNUNET_YES);