summaryrefslogtreecommitdiffstats
path: root/regress
diff options
context:
space:
mode:
authordtucker <dtucker@openbsd.org>2020-05-29 01:21:35 +0000
committerdtucker <dtucker@openbsd.org>2020-05-29 01:21:35 +0000
commit1ed1977c966704a98508526f7ff402cedf0bf773 (patch)
treeb43147b59d5d67ed435fdc52fbc851e220bc496a /regress
parentFix multiplier in convtime when handling seconds after other units. (diff)
downloadwireguard-openbsd-1ed1977c966704a98508526f7ff402cedf0bf773.tar.xz
wireguard-openbsd-1ed1977c966704a98508526f7ff402cedf0bf773.zip
Unit test for convtime. ok djm@
Diffstat (limited to 'regress')
-rw-r--r--regress/usr.bin/ssh/unittests/misc/tests.c21
1 files changed, 20 insertions, 1 deletions
diff --git a/regress/usr.bin/ssh/unittests/misc/tests.c b/regress/usr.bin/ssh/unittests/misc/tests.c
index ed775ebbd9d..8fe6aedbb9f 100644
--- a/regress/usr.bin/ssh/unittests/misc/tests.c
+++ b/regress/usr.bin/ssh/unittests/misc/tests.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: tests.c,v 1.1 2019/04/28 22:53:26 dtucker Exp $ */
+/* $OpenBSD: tests.c,v 1.2 2020/05/29 01:21:35 dtucker Exp $ */
/*
* Regress test for misc helper functions.
*
@@ -76,4 +76,23 @@ tests(void)
ASSERT_STRING_EQ(path, "some/path");
free(user); free(host); free(path);
TEST_DONE();
+
+ TEST_START("misc_convtime");
+ ASSERT_LONG_EQ(convtime("1"), 1);
+ ASSERT_LONG_EQ(convtime("2s"), 2);
+ ASSERT_LONG_EQ(convtime("3m"), 180);
+ ASSERT_LONG_EQ(convtime("1m30"), 90);
+ ASSERT_LONG_EQ(convtime("1m30s"), 90);
+ ASSERT_LONG_EQ(convtime("1h1s"), 3601);
+ ASSERT_LONG_EQ(convtime("1h30m"), 90 * 60);
+ ASSERT_LONG_EQ(convtime("1d"), 24 * 60 * 60);
+ ASSERT_LONG_EQ(convtime("1w"), 7 * 24 * 60 * 60);
+ ASSERT_LONG_EQ(convtime("1w2d3h4m5"), 788645);
+ ASSERT_LONG_EQ(convtime("1w2d3h4m5s"), 788645);
+ /* any negative number or error returns -1 */
+ ASSERT_LONG_EQ(convtime("-1"), -1);
+ ASSERT_LONG_EQ(convtime(""), -1);
+ ASSERT_LONG_EQ(convtime("trout"), -1);
+ ASSERT_LONG_EQ(convtime("-77"), -1);
+ TEST_DONE();
}