[py-svn] r36824 - py/dist/py/test/rsession

fijal at codespeak.net fijal at codespeak.net
Tue Jan 16 17:26:10 CET 2007


Author: fijal
Date: Tue Jan 16 17:26:08 2007
New Revision: 36824

Modified:
   py/dist/py/test/rsession/reporter.py
   py/dist/py/test/rsession/web.py
Log:
This should make LSession work properly.


Modified: py/dist/py/test/rsession/reporter.py
==============================================================================
--- py/dist/py/test/rsession/reporter.py	(original)
+++ py/dist/py/test/rsession/reporter.py	Tue Jan 16 17:26:08 2007
@@ -15,16 +15,13 @@
     def __init__(self, config, hosts, pkgdir=py.path.local(py.__file__)):
         self.config = config
         self.pkgdir = pkgdir
+        self.hosts = hosts
         self.failed_tests_outcome = []
         self.skipped_tests_outcome = []
         self.out = getout(py.std.sys.stdout)
-        #assert hosts == ['localhost']
         self.failed = dict([(host, 0) for host in hosts])
         self.skipped = dict([(host, 0) for host in hosts])
         self.passed = dict([(host, 0) for host in hosts])
-        # XXX: This is for tests to work
-        #self.count = 0
-        #self.lgt = 1000
 
     def get_item_name(self, event, colitem):
         return "/".join(colitem.listnames())
@@ -107,7 +104,7 @@
             self.out.sep("=", " FAILURES ")
         for event in self.failed_tests_outcome:
             if isinstance(event, report.ReceivedItemOutcome):
-                host = event.host.hostname
+                host = self.gethost(event)
                 self.out.sep('_', "%s on %s" % 
                     (" ".join(event.item.listnames()), host))
                 if event.outcome.signal:
@@ -118,6 +115,9 @@
                 self.out.sep('_', " ".join(event.item.listnames()))
                 out = outcome.Outcome(excinfo=event.excinfo)
                 self.repr_failure(event.item, outcome.ReprOutcome(out.make_repr()))
+
+    def gethost(self, event):
+        return event.host.hostname
     
     def repr_failure(self, item, outcome): 
         excinfo = outcome.excinfo
@@ -256,17 +256,6 @@
             join(event.item.listnames())))
 
 class LocalReporter(AbstractReporter):
-    def __init__(self, config, hosts, pkgdir=py.path.local(py.__file__)):
-        self.config = config
-        self.pkgdir = pkgdir
-        self.failed_tests_outcome = []
-        self.skipped_tests_outcome = []
-        self.out = getout(py.std.sys.stdout)
-        #assert hosts == ['localhost']
-        self.failed = 0
-        self.skipped = 0
-        self.passed = 0
-
     def get_item_name(self, event, colitem):
         return "/".join(colitem.listnames())
     
@@ -280,23 +269,18 @@
         self.failed_tests_outcome.append(event)
     
     def report_ReceivedItemOutcome(self, event):
+        host = self.hosts[0]
         if event.outcome.passed:
-            self.passed += 1
+            self.passed[host] += 1
             self.out.write(".")
         elif event.outcome.skipped:
             self.skipped_tests_outcome.append(event)
-            self.skipped += 1
+            self.skipped[host] += 1
             self.out.write("s")
         else:
-            self.failed += 1
+            self.failed[host] += 1
             self.failed_tests_outcome.append(event)
             self.out.write("F")
-            # we'll take care of them later
-        #self.count += 1
-        #if self.count >= self.lgt:
-        #    self.out.write("\n")
-        #itempath = " ".join(event.item.listnames()[1:])
-        #print "%10s: %s %s" %(sshhost[:10], status, itempath)
     
     def report_ItemStart(self, event):
         self.show_item(event.item)
@@ -317,6 +301,9 @@
             if local and name.startswith(local):
                 name = name[len(local) + 1:]
             self.out.write("\n%s[%d] " % (name, lgt))
+
+    def gethost(self, event):
+        return 'localhost'
     
     def hangs(self):
         pass

Modified: py/dist/py/test/rsession/web.py
==============================================================================
--- py/dist/py/test/rsession/web.py	(original)
+++ py/dist/py/test/rsession/web.py	Tue Jan 16 17:26:08 2007
@@ -301,6 +301,7 @@
         self.pending_events.put(event)
     
     def report_TestStarted(self, event):
+        # XXX: It overrides out self.hosts
         self.hosts = {}
         self.ready_hosts = {}
         for host in event.hosts:



More information about the pytest-commit mailing list