diff options
author | Mark Salyzyn <salyzyn@google.com> | 2017-12-20 08:56:18 -0800 |
---|---|---|
committer | Mark Salyzyn <salyzyn@google.com> | 2017-12-20 12:36:57 -0800 |
commit | 0b846e8c66239090f69faf307ebeb0b4e0dee9e9 (patch) | |
tree | ce7d93cb73ecd4eb89d4f0609123de961a13feb0 /tests/time_test.cpp | |
parent | 777d7c791488c9c7be7ec3d6e47fd02b0baee8bf (diff) | |
download | bionic-0b846e8c66239090f69faf307ebeb0b4e0dee9e9.tar.gz |
bionic: test: time()
Validate return values from time(), confirm progression.
Test: bionic-unit-tests --gtest_filter=time.time
Bug: 63737556
Change-Id: I08186780c42ded9648b3e788bb2caa2210d00dab
Diffstat (limited to 'tests/time_test.cpp')
-rw-r--r-- | tests/time_test.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/time_test.cpp b/tests/time_test.cpp index 7a96760c2..fccff6737 100644 --- a/tests/time_test.cpp +++ b/tests/time_test.cpp @@ -31,6 +31,31 @@ #include "private/bionic_constants.h" +TEST(time, time) { + // Acquire time + time_t p1, t1 = time(&p1); + // valid? + ASSERT_NE(static_cast<time_t>(0), t1); + ASSERT_NE(static_cast<time_t>(-1), t1); + ASSERT_EQ(p1, t1); + + // Acquire time one+ second later + usleep(1010000); + time_t p2, t2 = time(&p2); + // valid? + ASSERT_NE(static_cast<time_t>(0), t2); + ASSERT_NE(static_cast<time_t>(-1), t2); + ASSERT_EQ(p2, t2); + + // Expect time progression + ASSERT_LT(p1, p2); + ASSERT_LE(t2 - t1, static_cast<time_t>(2)); + + // Expect nullptr call to produce same results + ASSERT_LE(t2, time(nullptr)); + ASSERT_LE(time(nullptr) - t2, static_cast<time_t>(1)); +} + TEST(time, gmtime) { time_t t = 0; tm* broken_down = gmtime(&t); |