Makes Google Test compile (and all tests pass) on cygwin (possibly on wingw too).
This commit is contained in:
parent
9e672bd5e3
commit
f6b0dc0b40
@ -1546,16 +1546,17 @@ bool String::CaseInsensitiveWideCStringEquals(const wchar_t* lhs,
|
|||||||
|
|
||||||
#ifdef GTEST_OS_WINDOWS
|
#ifdef GTEST_OS_WINDOWS
|
||||||
return _wcsicmp(lhs, rhs) == 0;
|
return _wcsicmp(lhs, rhs) == 0;
|
||||||
#elif defined(GTEST_OS_MAC)
|
#elif defined(GTEST_OS_LINUX)
|
||||||
// Mac OS X doesn't define wcscasecmp.
|
return wcscasecmp(lhs, rhs) == 0;
|
||||||
|
#else
|
||||||
|
// Mac OS X and Cygwin don't define wcscasecmp. Other unknown OSes
|
||||||
|
// may not define it either.
|
||||||
wint_t left, right;
|
wint_t left, right;
|
||||||
do {
|
do {
|
||||||
left = towlower(*lhs++);
|
left = towlower(*lhs++);
|
||||||
right = towlower(*rhs++);
|
right = towlower(*rhs++);
|
||||||
} while (left && left == right);
|
} while (left && left == right);
|
||||||
return left == right;
|
return left == right;
|
||||||
#else
|
|
||||||
return wcscasecmp(lhs, rhs) == 0;
|
|
||||||
#endif // OS selector
|
#endif // OS selector
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -104,6 +104,20 @@ def RemoveTime(output):
|
|||||||
return re.sub(r'\(\d+ ms', '(? ms', output)
|
return re.sub(r'\(\d+ ms', '(? ms', output)
|
||||||
|
|
||||||
|
|
||||||
|
def RemoveTestCounts(output):
|
||||||
|
"""Removes test counts from a Google Test program's output."""
|
||||||
|
|
||||||
|
output = re.sub(r'\d+ tests from \d+ test cases',
|
||||||
|
'? tests from ? test cases', output)
|
||||||
|
return re.sub(r'\d+ tests\.', '? tests.', output)
|
||||||
|
|
||||||
|
|
||||||
|
def RemoveDeathTests(output):
|
||||||
|
"""Removes death test information from a Google Test program's output."""
|
||||||
|
|
||||||
|
return re.sub(r'\n.*DeathTest.*', '', output)
|
||||||
|
|
||||||
|
|
||||||
def NormalizeOutput(output):
|
def NormalizeOutput(output):
|
||||||
"""Normalizes output (the output of gtest_output_test_.exe)."""
|
"""Normalizes output (the output of gtest_output_test_.exe)."""
|
||||||
|
|
||||||
@ -182,7 +196,11 @@ class GTestOutputTest(unittest.TestCase):
|
|||||||
golden = golden_file.read()
|
golden = golden_file.read()
|
||||||
golden_file.close()
|
golden_file.close()
|
||||||
|
|
||||||
self.assertEquals(golden, output)
|
# We want the test to pass regardless of death tests being
|
||||||
|
# supported or not.
|
||||||
|
self.assert_(output == golden or
|
||||||
|
RemoveTestCounts(output) ==
|
||||||
|
RemoveTestCounts(RemoveDeathTests(golden)))
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
|
Loading…
Reference in New Issue
Block a user