diff options
author | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2021-10-22 12:46:49 +0200 |
---|---|---|
committer | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2022-03-30 22:31:30 +0200 |
commit | 27dfe8bf61a40e6b1a7f736119bf21037eaea2b9 (patch) | |
tree | e5d7866de253219de7da649216ba84bfe07408a3 /tests/libfstree/epoch.c | |
parent | e5fa9d585ed090602bcc045689046702199def86 (diff) |
Add a unit test for the SOURCE_DATE_EPOCH logic
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'tests/libfstree/epoch.c')
-rw-r--r-- | tests/libfstree/epoch.c | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/tests/libfstree/epoch.c b/tests/libfstree/epoch.c new file mode 100644 index 0000000..e36cd5b --- /dev/null +++ b/tests/libfstree/epoch.c @@ -0,0 +1,48 @@ +/* SPDX-License-Identifier: GPL-3.0-or-later */ +/* + * epoch.c + * + * Copyright (C) 2019 David Oberhollenzer <goliath@infraroot.at> + */ +#include "config.h" +#include "internal.h" +#include "../test.h" + +int main(void) +{ + sqfs_u32 ts; + + unsetenv("SOURCE_DATE_EPOCH"); + ts = get_source_date_epoch(); + TEST_EQUAL_UI(ts, 0); + + setenv("SOURCE_DATE_EPOCH", "1337", 1); + ts = get_source_date_epoch(); + TEST_EQUAL_UI(ts, 1337); + + setenv("SOURCE_DATE_EPOCH", "0xCAFE", 1); + ts = get_source_date_epoch(); + TEST_EQUAL_UI(ts, 0); + + setenv("SOURCE_DATE_EPOCH", "foobar", 1); + ts = get_source_date_epoch(); + TEST_EQUAL_UI(ts, 0); + + setenv("SOURCE_DATE_EPOCH", "-12", 1); + ts = get_source_date_epoch(); + TEST_EQUAL_UI(ts, 0); + + setenv("SOURCE_DATE_EPOCH", "12", 1); + ts = get_source_date_epoch(); + TEST_EQUAL_UI(ts, 12); + + setenv("SOURCE_DATE_EPOCH", "4294967295", 1); + ts = get_source_date_epoch(); + TEST_EQUAL_UI(ts, 0xFFFFFFFF); + + setenv("SOURCE_DATE_EPOCH", "4294967296", 1); + ts = get_source_date_epoch(); + TEST_EQUAL_UI(ts, 0); + + return EXIT_SUCCESS; +} |