Procházet zdrojové kódy

Remove print_function, change uses of it that were errors to stderr

Mike Naberezny před 10 roky
rodič
revize
572ce4e4b3

+ 0 - 5
supervisor/compat.py

@@ -24,11 +24,6 @@ else: # pragma: no cover
     def as_string(s): return s if isinstance(s, unicode) else s.decode('utf-8')
     reduce = reduce
 
-def print_function(*args,**kwargs): # pragma: no cover
-    kwargs.get('file', sys.stdout).write(
-        ' '.join(i for i in args)+kwargs.get('end','\n')
-        )
-
 def total_ordering(cls): # pragma: no cover
     """Class decorator that fills in missing ordering methods"""
     convert = {

+ 1 - 2
supervisor/http_client.py

@@ -3,7 +3,6 @@
 import sys
 import supervisor.medusa.text_socket as socket
 
-from supervisor.compat import print_function
 from supervisor.compat import urlparse
 from supervisor.compat import as_bytes
 from supervisor.compat import as_string
@@ -20,7 +19,7 @@ class Listener(object):
         pass
 
     def error(self, url, error):
-        print_function(url, error)
+        sys.stderr.write("%s %s\n" % (url, error))
 
     def response_header(self, url, name, value):
         pass

+ 3 - 3
supervisor/medusa/auth_handler.py

@@ -10,12 +10,12 @@ RCS_ID =  '$Id: auth_handler.py,v 1.6 2002/11/25 19:40:23 akuchling Exp $'
 # support for 'basic' authentication.
 
 import re
+import sys
 import time
 
 from supervisor.compat import encodestring, decodestring
 from supervisor.compat import md5
 from supervisor.compat import as_string, as_bytes
-from supervisor.compat import print_function
 
 import supervisor.medusa.counter as counter
 import supervisor.medusa.default_handler as default_handler
@@ -53,7 +53,7 @@ class auth_handler:
                 try:
                     decoded = as_string(decodestring(as_bytes(cookie)))
                 except:
-                    print_function('malformed authorization info <%s>' % cookie)
+                    sys.stderr.write('malformed authorization info <%s>\n' % cookie)
                     request.error (400)
                     return
                 auth_info = decoded.split(':', 1)
@@ -66,7 +66,7 @@ class auth_handler:
             #elif scheme == 'digest':
             #       print 'digest: ',AUTHORIZATION.group(2)
             else:
-                print('unknown/unsupported auth method: %s' % scheme)
+                sys.stderr.write('unknown/unsupported auth method: %s\n' % scheme)
                 self.handle_unauthorized(request)
         else:
             # list both?  prefer one or the other?

+ 1 - 2
supervisor/options.py

@@ -16,7 +16,6 @@ import platform
 import warnings
 import fcntl
 
-from supervisor.compat import print_function
 from supervisor.compat import PY3
 from supervisor.compat import ConfigParser
 from supervisor.compat import as_bytes, as_string
@@ -134,7 +133,7 @@ class Options:
         help = self.doc + "\n"
         if help.find("%s") > 0:
             help = help.replace("%s", self.progname)
-        print_function(help, end='', file=self.stdout)
+        self.stdout.write(help)
         self.exit(0)
 
     def usage(self, msg):

+ 16 - 27
supervisor/tests/test_http_client.py

@@ -1,6 +1,7 @@
 import socket
 import sys
 import unittest
+from supervisor.compat import StringIO
 
 class ListenerTests(unittest.TestCase):
     def _getTargetClass(self):
@@ -10,33 +11,21 @@ class ListenerTests(unittest.TestCase):
     def _makeOne(self):
         return self._getTargetClass()()
 
-    def _makeFakeStdout(self):
-        class Stdout(object):
-            def __init__(self):
-                self.things = []
-                self.flushed = False
-            def write(self, thing):
-                self.things.append(thing)
-            def flush(self):
-                self.flushed = True
-        stdout = Stdout()
-        return stdout
-
     def test_status(self):
         inst = self._makeOne()
         self.assertEqual(inst.status(None, None), None)
-        
+
     def test_error(self):
         inst = self._makeOne()
         try:
-            old_stdout = sys.stdout
-            stdout = self._makeFakeStdout()
-            sys.stdout = stdout
+            old_stderr = sys.stderr
+            stderr = StringIO()
+            sys.stderr = stderr
             self.assertEqual(inst.error('url', 'error'), None)
-            self.assertEqual(stdout.things, ['url error\n'])
+            self.assertEqual(stderr.getvalue(), 'url error\n')
         finally:
-            sys.stdout = old_stdout
-        
+            sys.stderr = old_stderr
+
     def test_response_header(self):
         inst = self._makeOne()
         self.assertEqual(inst.response_header(None, None, None), None)
@@ -49,10 +38,10 @@ class ListenerTests(unittest.TestCase):
         inst = self._makeOne()
         try:
             old_stdout = sys.stdout
-            stdout = self._makeFakeStdout()
+            stdout = StringIO()
             sys.stdout = stdout
             inst.feed('url', 'data')
-            self.assertEqual(stdout.things, ['data'])
+            self.assertEqual(stdout.getvalue(), 'data')
         finally:
             sys.stdout = old_stdout
 
@@ -93,7 +82,7 @@ class HTTPHandlerTests(unittest.TestCase):
             'nothttp://localhost',
             '/abc'
             )
-        
+
     def test_get_implied_port_80(self):
         inst = self._makeOne()
         sockets = []
@@ -150,7 +139,7 @@ class HTTPHandlerTests(unittest.TestCase):
         inst = self._makeOne()
         inst.error_handled = True
         self.assertEqual(inst.handle_error(), None)
-        
+
     def test_handle_error(self):
         inst = self._makeOne()
         closed = []
@@ -293,7 +282,7 @@ class HTTPHandlerTests(unittest.TestCase):
         inst.headers()
         self.assertEqual(inst.part, inst.body)
         self.assertEqual(terms, [3])
-        
+
     def test_headers_empty_line_chunked(self):
         inst = self._makeOne()
         inst.buffer = ''
@@ -357,7 +346,7 @@ class HTTPHandlerTests(unittest.TestCase):
         inst.length = 1
         self.assertEqual(inst.chunked_size(), None)
         self.assertEqual(inst.length, 1)
-        
+
     def test_chunked_size_zero_size(self):
         inst = self._makeOne()
         inst.buffer = '0'
@@ -406,7 +395,7 @@ class HTTPHandlerTests(unittest.TestCase):
         self.assertEqual(inst.trailer(), None)
         self.assertEqual(dones, [True])
         self.assertEqual(closes, [True])
-        
+
 class DummyListener(object):
     closed = None
     error_url = None
@@ -414,7 +403,7 @@ class DummyListener(object):
     done = False
     def __init__(self):
         self.fed_data = []
-        
+
     def close(self, url):
         self.closed = url