summaryrefslogtreecommitdiff
path: root/src/network/test-networkd-address.c
blob: e0d85b2b796408fc96ae933100cc9560587328d1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/* SPDX-License-Identifier: LGPL-2.1-or-later */

#include "networkd-address.h"
#include "tests.h"
#include "time-util.h"

static void test_FORMAT_LIFETIME_one(usec_t lifetime, const char *expected) {
        const char *t = FORMAT_LIFETIME(lifetime);

        log_debug(USEC_FMT " → \"%s\" (expected \"%s\")", lifetime, t, expected);
        assert_se(streq(t, expected));
}

TEST(FORMAT_LIFETIME) {
        usec_t now_usec;

        now_usec = now(clock_boottime_or_monotonic());

        test_FORMAT_LIFETIME_one(now_usec, "for 0");
        test_FORMAT_LIFETIME_one(usec_add(now_usec, 2 * USEC_PER_SEC - 1), "for 1s");
        test_FORMAT_LIFETIME_one(usec_add(now_usec, 3 * USEC_PER_WEEK + USEC_PER_SEC - 1), "for 3w");
        test_FORMAT_LIFETIME_one(USEC_INFINITY, "forever");
}

DEFINE_TEST_MAIN(LOG_DEBUG);