summaryrefslogtreecommitdiff
path: root/Tests/RunCMake/GoogleTest/timeout_test.cpp
diff options
context:
space:
mode:
authorDongHun Kwak <dh0128.kwak@samsung.com>2021-10-08 09:13:13 +0900
committerDongHun Kwak <dh0128.kwak@samsung.com>2021-10-08 09:13:13 +0900
commit0375131677cc32a24352f205d05c730690c55af6 (patch)
tree749fa75697d8f28962e338b35cf7c099f4099957 /Tests/RunCMake/GoogleTest/timeout_test.cpp
parentba608e51abaeeca867d14590749beda6c283e3a8 (diff)
downloadcmake-0375131677cc32a24352f205d05c730690c55af6.tar.gz
cmake-0375131677cc32a24352f205d05c730690c55af6.tar.bz2
cmake-0375131677cc32a24352f205d05c730690c55af6.zip
Imported Upstream version 3.10.3upstream/3.10.3
Diffstat (limited to 'Tests/RunCMake/GoogleTest/timeout_test.cpp')
-rw-r--r--Tests/RunCMake/GoogleTest/timeout_test.cpp30
1 files changed, 27 insertions, 3 deletions
diff --git a/Tests/RunCMake/GoogleTest/timeout_test.cpp b/Tests/RunCMake/GoogleTest/timeout_test.cpp
index a8e5c1ce4..9162dcf45 100644
--- a/Tests/RunCMake/GoogleTest/timeout_test.cpp
+++ b/Tests/RunCMake/GoogleTest/timeout_test.cpp
@@ -4,12 +4,36 @@
#include <unistd.h>
#endif
-int main()
+#include <iostream>
+#include <string>
+
+void sleepFor(unsigned seconds)
{
#if defined(_WIN32)
- Sleep(10000);
+ Sleep(seconds * 1000);
#else
- sleep(10);
+ sleep(seconds);
+#endif
+}
+
+int main(int argc, char** argv)
+{
+ // Note: GoogleTest.cmake doesn't actually depend on Google Test as such;
+ // it only requires that we produce output in the expected format when
+ // invoked with --gtest_list_tests. Thus, we fake that here. This allows us
+ // to test the module without actually needing Google Test.
+ if (argc > 1 && std::string(argv[1]) == "--gtest_list_tests") {
+ std::cout << "timeout." << std::endl;
+ std::cout << " case" << std::endl;
+#ifdef discoverySleepSec
+ sleepFor(discoverySleepSec);
+#endif
+ return 0;
+ }
+
+#ifdef sleepSec
+ sleepFor(sleepSec);
#endif
+
return 0;
}