Implemented support for Process::GetRandomNumber on Windows.
[oota-llvm.git] / unittests / Support / ProcessTest.cpp
index af6a6f921b0dab86a29aa81c2ffc2d0f256da90b..19694e55d067477386083ed08d6ede5a0ce6443a 100644 (file)
@@ -39,6 +39,13 @@ TEST(ProcessTest, SelfProcess) {
   EXPECT_GT(TimeValue::MaxTime, process::get_self()->get_wall_time());
 }
 
+TEST(ProcessTest, GetRandomNumberTest) {
+  const unsigned r1 = Process::GetRandomNumber();
+  const unsigned r2 = Process::GetRandomNumber();
+  // It should be extremely unlikely that both r1 and r2 are 0.
+  EXPECT_NE((r1 | r2), 0);
+}
+
 #ifdef _MSC_VER
 #define setenv(name, var, ignore) _putenv_s(name, var)
 #endif