This reverts commit 365451e28368db46ae89a3a990d85c10c2284aa2.
This commit is contained in:
parent
ed037d229f
commit
a8ffe66154
@ -32,6 +32,14 @@ def get_colors(colorize: bool = False) -> ANSIColors:
|
||||
|
||||
|
||||
def can_colorize() -> bool:
|
||||
if sys.platform == "win32":
|
||||
try:
|
||||
import nt
|
||||
|
||||
if not nt._supports_virtual_terminal():
|
||||
return False
|
||||
except (ImportError, AttributeError):
|
||||
return False
|
||||
if not sys.flags.ignore_environment:
|
||||
if os.environ.get("PYTHON_COLORS") == "0":
|
||||
return False
|
||||
@ -50,15 +58,6 @@ def can_colorize() -> bool:
|
||||
if not hasattr(sys.stderr, "fileno"):
|
||||
return False
|
||||
|
||||
if sys.platform == "win32":
|
||||
try:
|
||||
import nt
|
||||
|
||||
if not nt._supports_virtual_terminal():
|
||||
return False
|
||||
except (ImportError, AttributeError):
|
||||
return False
|
||||
|
||||
try:
|
||||
return os.isatty(sys.stderr.fileno())
|
||||
except io.UnsupportedOperation:
|
||||
|
@ -50,47 +50,10 @@ class TestColorizeFunction(unittest.TestCase):
|
||||
with unittest.mock.patch("os.environ",
|
||||
{'FORCE_COLOR': '1', "PYTHON_COLORS": '0'}):
|
||||
self.assertEqual(_colorize.can_colorize(), False)
|
||||
with unittest.mock.patch("os.environ", {}):
|
||||
self.assertEqual(_colorize.can_colorize(), True)
|
||||
|
||||
isatty_mock.return_value = False
|
||||
with unittest.mock.patch("os.environ", {}):
|
||||
self.assertEqual(_colorize.can_colorize(), False)
|
||||
|
||||
@force_not_colorized
|
||||
@unittest.skipUnless(sys.platform == "win32", "Windows only")
|
||||
def test_colorized_detection_checks_for_environment_variables_no_vt(self):
|
||||
with (unittest.mock.patch("nt._supports_virtual_terminal", return_value=False),
|
||||
unittest.mock.patch("os.isatty") as isatty_mock,
|
||||
unittest.mock.patch("sys.flags", unittest.mock.MagicMock(ignore_environment=False)),
|
||||
unittest.mock.patch("_colorize.can_colorize", ORIGINAL_CAN_COLORIZE)):
|
||||
isatty_mock.return_value = True
|
||||
with unittest.mock.patch("os.environ", {'TERM': 'dumb'}):
|
||||
self.assertEqual(_colorize.can_colorize(), False)
|
||||
with unittest.mock.patch("os.environ", {'PYTHON_COLORS': '1'}):
|
||||
self.assertEqual(_colorize.can_colorize(), True)
|
||||
with unittest.mock.patch("os.environ", {'PYTHON_COLORS': '0'}):
|
||||
self.assertEqual(_colorize.can_colorize(), False)
|
||||
with unittest.mock.patch("os.environ", {'NO_COLOR': '1'}):
|
||||
self.assertEqual(_colorize.can_colorize(), False)
|
||||
with unittest.mock.patch("os.environ",
|
||||
{'NO_COLOR': '1', "PYTHON_COLORS": '1'}):
|
||||
self.assertEqual(_colorize.can_colorize(), True)
|
||||
with unittest.mock.patch("os.environ", {'FORCE_COLOR': '1'}):
|
||||
self.assertEqual(_colorize.can_colorize(), True)
|
||||
with unittest.mock.patch("os.environ",
|
||||
{'FORCE_COLOR': '1', 'NO_COLOR': '1'}):
|
||||
self.assertEqual(_colorize.can_colorize(), False)
|
||||
with unittest.mock.patch("os.environ",
|
||||
{'FORCE_COLOR': '1', "PYTHON_COLORS": '0'}):
|
||||
self.assertEqual(_colorize.can_colorize(), False)
|
||||
with unittest.mock.patch("os.environ", {}):
|
||||
self.assertEqual(_colorize.can_colorize(), False)
|
||||
|
||||
isatty_mock.return_value = False
|
||||
with unittest.mock.patch("os.environ", {}):
|
||||
self.assertEqual(_colorize.can_colorize(), False)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
|
@ -1,2 +0,0 @@
|
||||
Allow to force color output on Windows using environment variables. Patch by
|
||||
Andrey Efremov.
|
Loading…
x
Reference in New Issue
Block a user