Skip to content

Commit a3f1546

Browse files
committed
Improve other tests
1 parent b0f2acc commit a3f1546

1 file changed

Lines changed: 22 additions & 6 deletions

File tree

Lib/test/test_msvcrt.py

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -128,18 +128,34 @@ def test_SetErrorMode(self):
128128

129129
@unittest.skipUnless(Py_DEBUG, "only available under debug build")
130130
def test_set_error_mode(self):
131-
old = msvcrt.set_error_mode(msvcrt.OUT_TO_STDERR)
132-
msvcrt.set_error_mode(old)
131+
old = msvcrt.set_error_mode(msvcrt.REPORT_ERRMODE)
132+
self.addCleanup(msvcrt.set_error_mode, old)
133+
134+
returned = msvcrt.set_error_mode(msvcrt.OUT_TO_STDERR)
135+
self.assertIs(type(returned), int)
136+
self.assertEqual(old, returned)
133137

134138
@unittest.skipUnless(Py_DEBUG, "only available under debug build")
135139
def test_CrtSetReportMode(self):
136-
old = msvcrt.CrtSetReportMode(msvcrt.CRT_WARN, msvcrt.CRTDBG_MODE_DEBUG)
137-
msvcrt.CrtSetReportMode(msvcrt.CRT_WARN, old)
140+
old = msvcrt.CrtSetReportMode(msvcrt.CRT_WARN,
141+
msvcrt.CRTDBG_REPORT_MODE)
142+
self.addCleanup(msvcrt.CrtSetReportMode, msvcrt.CRT_WARN, old)
143+
144+
returned = msvcrt.CrtSetReportMode(msvcrt.CRT_WARN,
145+
msvcrt.CRTDBG_MODE_DEBUG)
146+
self.assertIs(type(returned), int)
147+
self.assertEqual(old, returned)
138148

139149
@unittest.skipUnless(Py_DEBUG, "only available under debug build")
140150
def test_CrtSetReportFile(self):
141-
old = msvcrt.CrtSetReportFile(msvcrt.CRT_WARN, sys.stdout.fileno())
142-
msvcrt.CrtSetReportFile(msvcrt.CRT_WARN, old)
151+
old = msvcrt.CrtSetReportFile(msvcrt.CRT_WARN,
152+
msvcrt.CRTDBG_REPORT_FILE)
153+
self.addCleanup(msvcrt.CrtSetReportFile, msvcrt.CRT_WARN, old)
154+
155+
returned = msvcrt.CrtSetReportFile(msvcrt.CRT_WARN,
156+
msvcrt.CRTDBG_FILE_STDOUT)
157+
self.assertIs(type(returned), int)
158+
self.assertEqual(old, returned)
143159

144160

145161
if __name__ == "__main__":

0 commit comments

Comments
 (0)