[Python-checkins] cpython: Added diagnostics to test_logging, after reverting last change.

vinay.sajip python-checkins at python.org
Fri May 13 08:09:47 CEST 2011


http://hg.python.org/cpython/rev/b609a1701976
changeset:   70070:b609a1701976
user:        Vinay Sajip <vinay_sajip at yahoo.co.uk>
date:        Fri May 13 07:09:40 2011 +0100
summary:
  Added diagnostics to test_logging, after reverting last change.

files:
  Lib/test/test_logging.py |  21 ++++++++++++---------
  1 files changed, 12 insertions(+), 9 deletions(-)


diff --git a/Lib/test/test_logging.py b/Lib/test/test_logging.py
--- a/Lib/test/test_logging.py
+++ b/Lib/test/test_logging.py
@@ -3502,7 +3502,6 @@
         fh = logging.handlers.TimedRotatingFileHandler(self.fn, 'S',
                                                        backupCount=1)
         r = logging.makeLogRecord({'msg': 'testing'})
-        start = datetime.datetime.now()
         fh.emit(r)
         self.assertLogFile(self.fn)
         time.sleep(1.0)
@@ -3511,21 +3510,25 @@
         # At this point, we should have a recent rotated file which we
         # can test for the existence of. However, in practice, on some
         # machines which run really slowly, we don't know how far back
-        # in time to go to look for the log file. So, we go back as far as
-        # when the test started, and stop as soon as we see a rotated file.
+        # in time to go to look for the log file. So, we go back a fair
+        # bit, and stop as soon as we see a rotated file. In theory this
+        # could of course still fail, but the chances are lower.
         found = False
         now = datetime.datetime.now()
-        secs = 1
-        prev = now - datetime.timedelta(seconds=secs)
-        while prev > start:
+        GO_BACK = 2 * 60 # seconds
+        for secs in range(GO_BACK):
+            prev = now - datetime.timedelta(seconds=secs)
             fn = self.fn + prev.strftime(".%Y-%m-%d_%H-%M-%S")
             found = os.path.exists(fn)
             if found:
                 self.rmfiles.append(fn)
                 break
-            secs += 1
-            prev -= datetime.timedelta(seconds=1)
-        msg = 'No rotated files found, went back %d seconds' % secs
+        msg = 'No rotated files found, went back %d seconds' % GO_BACK
+        if not found:
+            #print additional diagnostics
+            dn = os.path.dirname(self.fn)
+            files = [f for f in os.listdir(dn) if f.startswith(self.fn)]
+            print('The only matching files are: %s' % files)
         self.assertTrue(found, msg=msg)
 
     def test_invalid(self):

-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list