/* Copyright (c) 2007-2018 Dovecot authors, see the included COPYING file */
#include "test-lib.h"
#include "utc-mktime.h"
struct test_utc_mktime {
};
void test_utc_mktime(void)
{
#ifdef TIME_T_SIGNED
{ 1969, 12, 31, 23, 59, 59, -1 },
{ 1901, 12, 13, 20, 45, 53, -2147483647 },
#endif
{ 2106, 2, 7, 6, 28, 15, 4294967295 },
{ 2038, 1, 19, 3, 14, 8, 2147483648 },
#endif
{ 2007, 11, 7, 1, 7, 20, 1194397640 },
{ 1970, 1, 1, 0, 0, 0, 0 },
{ 2038, 1, 19, 3, 14, 7, 2147483647 },
#if TIME_T_MAX_BITS > 32
{ 2106, 2, 7, 6, 28, 16, 4294967296 },
#endif
/* June leap second */
{ 2015, 6, 30, 23, 59, 59, 1435708799 },
{ 2015, 6, 30, 23, 59, 60, 1435708799 },
{ 2015, 7, 1, 0, 0, 0, 1435708800 },
/* Invalid leap second */
{ 2017, 1, 24, 16, 40, 60, 1485276059 },
/* Dec leap second */
{ 2016, 12, 31, 23, 59, 59, 1483228799 },
{ 2016, 12, 31, 23, 59, 60, 1483228799 },
{ 2017, 1, 1, 0, 0, 0, 1483228800 },
};
unsigned int i;
time_t t;
bool success;
for (i = 0; i < N_ELEMENTS(tests); i++) {
t = utc_mktime(&tm);
}
}