Skip to content

Commit b76e796

Browse files
committed
Fix tests on windows
1 parent 38077c5 commit b76e796

File tree

2 files changed

+16
-2
lines changed

2 files changed

+16
-2
lines changed

tornado/test/options_test.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ def setUp(self):
6363
self.logger.addHandler(self.handler)
6464

6565
def tearDown(self):
66+
self.handler.close()
6667
os.unlink(self.filename)
6768
os.rmdir(self.tempdir)
6869

tornado/test/simple_httpclient_test.py

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,13 @@
22

33
import collections
44
from contextlib import closing
5+
import errno
56
import gzip
67
import logging
8+
import os
79
import re
810
import socket
11+
import sys
912

1013
from tornado.httpclient import AsyncHTTPClient
1114
from tornado.httputil import HTTPHeaders
@@ -284,10 +287,20 @@ def test_host_header(self):
284287
self.assertTrue(host_re.match(response.body), response.body)
285288

286289
def test_connection_refused(self):
287-
self.http_client.fetch("http://localhost:1/", self.stop)
290+
port = get_unused_port()
291+
self.http_client.fetch("http://localhost:%d/" % port, self.stop)
288292
response = self.wait()
289293
self.assertEqual(599, response.code)
290-
self.assertTrue("Connection refused" in str(response.error))
294+
295+
if sys.platform != 'cygwin':
296+
# cygwin returns EPERM instead of ECONNREFUSED here
297+
self.assertTrue(str(errno.ECONNREFUSED) in str(response.error),
298+
response.error)
299+
# This is usually "Connection refused".
300+
# On windows, strerror is broken and returns "Unknown error".
301+
expected_message = os.strerror(errno.ECONNREFUSED)
302+
self.assertTrue(expected_message in str(response.error),
303+
response.error)
291304

292305

293306
class CreateAsyncHTTPClientTestCase(AsyncTestCase, LogTrapTestCase):

0 commit comments

Comments
 (0)