]> git.ipfire.org Git - thirdparty/openssh-portable.git/commitdiff
upstream: Unit test for convtime. ok djm@
authordtucker@openbsd.org <dtucker@openbsd.org>
Fri, 29 May 2020 01:21:35 +0000 (01:21 +0000)
committerDamien Miller <djm@mindrot.org>
Fri, 29 May 2020 05:48:10 +0000 (15:48 +1000)
OpenBSD-Regress-ID: cec4239efa2fc4c7062064f07a847e1cbdbcd5dd

regress/unittests/misc/tests.c

index ed775ebbd9d2e1c6ce32eacd7957fddaf35ad682..8fe6aedbb9fe804455b109a9f32fe0598cd4a228 100644 (file)
@@ -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();
 }