|
25 | 25 | importjson
|
26 | 26 | importtextwrap
|
27 | 27 | importtraceback
|
| 28 | +importcontextlib |
28 | 29 | fromfunctoolsimportpartial
|
29 | 30 | frompathlibimportPath
|
30 | 31 |
|
@@ -4314,24 +4315,29 @@ def foo():
|
4314 | 4315 | self.assertEqual(actual,expected)
|
4315 | 4316 |
|
4316 | 4317 | deftest_colorized_detection_checks_for_environment_variables(self):
|
4317 |
| -withunittest.mock.patch("os.isatty")asisatty_mock: |
4318 |
| -isatty_mock.return_value=True |
4319 |
| -withunittest.mock.patch("os.environ", {'TERM':'dumb'}): |
4320 |
| -self.assertEqual(traceback._can_colorize(),False) |
4321 |
| -withunittest.mock.patch("os.environ", {'PY_COLORS':'1'}): |
4322 |
| -self.assertEqual(traceback._can_colorize(),True) |
4323 |
| -withunittest.mock.patch("os.environ", {'PY_COLORS':'0'}): |
4324 |
| -self.assertEqual(traceback._can_colorize(),False) |
4325 |
| -withunittest.mock.patch("os.environ", {'NO_COLOR':'1'}): |
4326 |
| -self.assertEqual(traceback._can_colorize(),False) |
4327 |
| -withunittest.mock.patch("os.environ", {'NO_COLOR':'1',"PY_COLORS":'1'}): |
4328 |
| -self.assertEqual(traceback._can_colorize(),False) |
4329 |
| -withunittest.mock.patch("os.environ", {'FORCE_COLOR':'1'}): |
4330 |
| -self.assertEqual(traceback._can_colorize(),True) |
4331 |
| -withunittest.mock.patch("os.environ", {'FORCE_COLOR':'1','NO_COLOR':'1'}): |
| 4318 | +ifsys.platform=="win32": |
| 4319 | +virtual_patching=unittest.mock.patch("nt._supports_virtual_terminal",return_value=True) |
| 4320 | +else: |
| 4321 | +virtual_patching=contextlib.nullcontext() |
| 4322 | +withvirtual_patching: |
| 4323 | +withunittest.mock.patch("os.isatty")asisatty_mock: |
| 4324 | +isatty_mock.return_value=True |
| 4325 | +withunittest.mock.patch("os.environ", {'TERM':'dumb'}): |
| 4326 | +self.assertEqual(traceback._can_colorize(),False) |
| 4327 | +withunittest.mock.patch("os.environ", {'PY_COLORS':'1'}): |
| 4328 | +self.assertEqual(traceback._can_colorize(),True) |
| 4329 | +withunittest.mock.patch("os.environ", {'PY_COLORS':'0'}): |
| 4330 | +self.assertEqual(traceback._can_colorize(),False) |
| 4331 | +withunittest.mock.patch("os.environ", {'NO_COLOR':'1'}): |
| 4332 | +self.assertEqual(traceback._can_colorize(),False) |
| 4333 | +withunittest.mock.patch("os.environ", {'NO_COLOR':'1',"PY_COLORS":'1'}): |
| 4334 | +self.assertEqual(traceback._can_colorize(),False) |
| 4335 | +withunittest.mock.patch("os.environ", {'FORCE_COLOR':'1'}): |
| 4336 | +self.assertEqual(traceback._can_colorize(),True) |
| 4337 | +withunittest.mock.patch("os.environ", {'FORCE_COLOR':'1','NO_COLOR':'1'}): |
| 4338 | +self.assertEqual(traceback._can_colorize(),False) |
| 4339 | +isatty_mock.return_value=False |
4332 | 4340 | self.assertEqual(traceback._can_colorize(),False)
|
4333 |
| -isatty_mock.return_value=False |
4334 |
| -self.assertEqual(traceback._can_colorize(),False) |
4335 | 4341 |
|
4336 | 4342 | if__name__=="__main__":
|
4337 | 4343 | unittest.main()
|