diff --git a/googletest/src/gtest.cc b/googletest/src/gtest.cc index 7669d228..d01cbd58 100644 --- a/googletest/src/gtest.cc +++ b/googletest/src/gtest.cc @@ -3252,15 +3252,16 @@ bool ShouldUseColor(bool stdout_is_tty) { #else // On non-Windows platforms, we rely on the TERM variable. const char* const term = posix::GetEnv("TERM"); - const bool term_supports_color = term != nullptr && ( - String::CStringEquals(term, "xterm") || - String::CStringEquals(term, "xterm-color") || - String::CStringEquals(term, "screen") || - String::CStringEquals(term, "tmux") || - String::CStringEquals(term, "rxvt-unicode") || - String::CStringEquals(term, "linux") || - String::CStringEquals(term, "cygwin") || - String::EndsWithCaseInsensitive(term, "-256color")); + const bool term_supports_color = + term != nullptr && (String::CStringEquals(term, "xterm") || + String::CStringEquals(term, "xterm-color") || + String::CStringEquals(term, "xterm-kitty") || + String::CStringEquals(term, "screen") || + String::CStringEquals(term, "tmux") || + String::CStringEquals(term, "rxvt-unicode") || + String::CStringEquals(term, "linux") || + String::CStringEquals(term, "cygwin") || + String::EndsWithCaseInsensitive(term, "-256color")); return stdout_is_tty && term_supports_color; #endif // GTEST_OS_WINDOWS } diff --git a/googletest/test/googletest-color-test.py b/googletest/test/googletest-color-test.py index c22752db..f08edf70 100755 --- a/googletest/test/googletest-color-test.py +++ b/googletest/test/googletest-color-test.py @@ -78,6 +78,7 @@ class GTestColorTest(gtest_test_utils.TestCase): self.assert_(UsesColor('cygwin', None, None)) self.assert_(UsesColor('xterm', None, None)) self.assert_(UsesColor('xterm-color', None, None)) + self.assert_(UsesColor('xterm-kitty', None, None)) self.assert_(UsesColor('xterm-256color', None, None)) def testFlagOnly(self): diff --git a/googletest/test/gtest_unittest.cc b/googletest/test/gtest_unittest.cc index 329ca546..8bd21be9 100644 --- a/googletest/test/gtest_unittest.cc +++ b/googletest/test/gtest_unittest.cc @@ -6636,6 +6636,9 @@ TEST(ColoredOutputTest, UsesColorsWhenTermSupportsColors) { SetEnv("TERM", "xterm-color"); // TERM supports colors. EXPECT_TRUE(ShouldUseColor(true)); // Stdout is a TTY. + SetEnv("TERM", "xterm-kitty"); // TERM supports colors. + EXPECT_TRUE(ShouldUseColor(true)); // Stdout is a TTY. + SetEnv("TERM", "xterm-256color"); // TERM supports colors. EXPECT_TRUE(ShouldUseColor(true)); // Stdout is a TTY.