summaryrefslogtreecommitdiff
path: root/unittests
diff options
context:
space:
mode:
authorTorok Edwin <edwintorok@gmail.com>2010-01-22 15:51:31 +0000
committerTorok Edwin <edwintorok@gmail.com>2010-01-22 15:51:31 +0000
commitb0a5baefaa74411e441631343e2c50bb7535e893 (patch)
treee654263ef49cefd754d5e75e6836c881c3d4a96a /unittests
parent12bdbf1ca80a1c7a18020f8fd4482180afcfe6f4 (diff)
downloadllvm-b0a5baefaa74411e441631343e2c50bb7535e893.tar.gz
llvm-b0a5baefaa74411e441631343e2c50bb7535e893.tar.bz2
llvm-b0a5baefaa74411e441631343e2c50bb7535e893.tar.xz
Fix TimeValue::now() on Unix.
TimeValue()::now().toEpochTime() is supposed to be the same as time(), but it wasn't, because toEpoch subtracted PosixZeroTime, but now() didn't add PosixZeroTime! Add a unittest to check this works. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94178 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'unittests')
-rw-r--r--unittests/Support/System.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/unittests/Support/System.cpp b/unittests/Support/System.cpp
new file mode 100644
index 0000000000..b3dd17d380
--- /dev/null
+++ b/unittests/Support/System.cpp
@@ -0,0 +1,16 @@
+//===- llvm/unittest/Support/System.cpp - System tests --===//
+#include "gtest/gtest.h"
+#include "llvm/System/TimeValue.h"
+#include <time.h>
+
+using namespace llvm;
+namespace {
+class SystemTest : public ::testing::Test {
+};
+
+TEST_F(SystemTest, TimeValue) {
+ sys::TimeValue now = sys::TimeValue::now();
+ time_t now_t = time(NULL);
+ EXPECT_TRUE(abs(now_t - now.toEpochTime()) < 2);
+}
+}