diff options
author | Jason R. Coombs <jaraco@jaraco.com> | 2015-01-02 18:38:36 -0500 |
---|---|---|
committer | Jason R. Coombs <jaraco@jaraco.com> | 2015-01-02 18:38:36 -0500 |
commit | 16ee10c47583a4a2b7480af6fc5a205343acfdfd (patch) | |
tree | 7cfbb6d488a92fa01ddb86d6f226f549ad26a01e /setuptools/tests/server.py | |
parent | 866ff739f6e64aaaefcf7816263410527c9f55f7 (diff) | |
parent | 41f2c5ec8dd669747f3cfd8d6b2ae9a40d219545 (diff) | |
download | python-setuptools-git-16ee10c47583a4a2b7480af6fc5a205343acfdfd.tar.gz |
Merge with 10.2.1
--HG--
branch : feature/issue-229
Diffstat (limited to 'setuptools/tests/server.py')
-rw-r--r-- | setuptools/tests/server.py | 26 |
1 files changed, 5 insertions, 21 deletions
diff --git a/setuptools/tests/server.py b/setuptools/tests/server.py index 099e8b19..1fee0563 100644 --- a/setuptools/tests/server.py +++ b/setuptools/tests/server.py @@ -1,10 +1,10 @@ """Basic http server for tests to simulate PyPI or custom indexes """ -import sys + import time import threading -from six.moves import BaseHTTPServer, SimpleHTTPServer, urllib +from six.moves import BaseHTTPServer, SimpleHTTPServer class IndexServer(BaseHTTPServer.HTTPServer): """Basic single-threaded http server simulating a package index @@ -23,12 +23,8 @@ class IndexServer(BaseHTTPServer.HTTPServer): RequestHandlerClass) self._run = True - def serve(self): - while self._run: - self.handle_request() - def start(self): - self.thread = threading.Thread(target=self.serve) + self.thread = threading.Thread(target=self.serve_forever) self.thread.start() def stop(self): @@ -37,19 +33,7 @@ class IndexServer(BaseHTTPServer.HTTPServer): # Let the server finish the last request and wait for a new one. time.sleep(0.1) - # self.shutdown is not supported on python < 2.6, so just - # set _run to false, and make a request, causing it to - # terminate. - self._run = False - url = 'http://127.0.0.1:%(server_port)s/' % vars(self) - try: - if sys.version_info >= (2, 6): - urllib.request.urlopen(url, timeout=5) - else: - urllib.request.urlopen(url) - except urllib.error.URLError: - # ignore any errors; all that's important is the request - pass + self.shutdown() self.thread.join() self.socket.close() @@ -78,6 +62,6 @@ class MockServer(BaseHTTPServer.HTTPServer, threading.Thread): def run(self): self.serve_forever() + @property def url(self): return 'http://localhost:%(server_port)s/' % vars(self) - url = property(url) |