From e0ecb7ac588e4061fe57207ff3734e465637b14d Mon Sep 17 00:00:00 2001 From: shiqian Date: Wed, 9 Jul 2008 20:58:26 +0000 Subject: Makes Google Test compile on Mac OS X and Cygwin, and adds project files for Microsoft Visual Studio. --- test/gtest_break_on_failure_unittest.py | 8 ++++++-- test/gtest_unittest.cc | 8 +++++--- 2 files changed, 11 insertions(+), 5 deletions(-) (limited to 'test') diff --git a/test/gtest_break_on_failure_unittest.py b/test/gtest_break_on_failure_unittest.py index 1b18339b..674ef11d 100755 --- a/test/gtest_break_on_failure_unittest.py +++ b/test/gtest_break_on_failure_unittest.py @@ -74,10 +74,14 @@ def SetEnvVar(env_var, value): def Run(command): - """Runs a command; returns 1 if it has a segmentation fault, or 0 otherwise. + """Runs a command; returns 1 if it was killed by a signal, or 0 otherwise. """ - return os.system(command) == signal.SIGSEGV + exit_code = os.system(command) + # On Unix-like systems, the lowest 8 bits of the exit code is the + # signal number that killed the process (or 0 if it wasn't killed by + # a signal). + return (exit_code & 255) != 0 # The unit test. diff --git a/test/gtest_unittest.cc b/test/gtest_unittest.cc index 9a64a13e..02799a4f 100644 --- a/test/gtest_unittest.cc +++ b/test/gtest_unittest.cc @@ -157,10 +157,12 @@ TEST(ToUtf8StringTest, CanEncode12To16Bits) { EXPECT_STREQ("\xEC\x9D\x8D", ToUtf8String(L'\xC74D').c_str()); } -#if !defined(GTEST_OS_WINDOWS) && !defined(__SYMBIAN32__) +#if !defined(GTEST_OS_WINDOWS) && !defined(GTEST_OS_CYGWIN) && \ + !defined(__SYMBIAN32__) // Tests in this group require a wchar_t to hold > 16 bits, and thus -// are skipped on Windows and Symbian, where a wchar_t is 16-bit wide. +// are skipped on Windows, Cygwin, and Symbian, where a wchar_t is +// 16-bit wide. // Tests that Unicode code-points that have 17 to 21 bits are encoded // as 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx. @@ -178,7 +180,7 @@ TEST(ToUtf8StringTest, CanEncodeInvalidCodePoint) { ToUtf8String(L'\x1234ABCD').c_str()); } -#endif // Windows or Symbian +#endif // Windows, Cygwin, or Symbian // Tests the List template class. -- cgit v1.2.3