Merge lp:~jml/zope.testing/subunit-time-always-2 into lp:zope.testing

Proposed by Jonathan Lange
Status: Merged
Merge reported by: Benji York
Merged at revision: not available
Proposed branch: lp:~jml/zope.testing/subunit-time-always-2
Merge into: lp:zope.testing
Diff against target: 328 lines (+52/-71)
2 files modified
src/zope/testing/testrunner/formatter.py (+4/-12)
src/zope/testing/testrunner/testrunner-subunit.txt (+48/-59)
To merge this branch: bzr merge lp:~jml/zope.testing/subunit-time-always-2
Reviewer Review Type Date Requested Status
Benji York (community) Approve
ZTK steering group Pending
Review via email: mp+30216@code.launchpad.net

Description of the change

This patch causes timestamps to always be included in subunit output.

Since subunit output is for consumption by machines, rather than humans, it doesn't cause any harm. Having the data in the output by default makes zope testrunner much more useful for analyzing test run time.

To post a comment you must log in.
Revision history for this message
Benji York (benji) wrote :

Looks good. Committed in r114849.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'src/zope/testing/testrunner/formatter.py'
--- src/zope/testing/testrunner/formatter.py 2010-06-03 16:55:38 +0000
+++ src/zope/testing/testrunner/formatter.py 2010-07-18 17:43:40 +0000
@@ -731,10 +731,6 @@
731 self.PLAIN_TEXT = content.ContentType(731 self.PLAIN_TEXT = content.ContentType(
732 'text', 'plain', {'charset': 'utf8'})732 'text', 'plain', {'charset': 'utf8'})
733733
734 @property
735 def _time_tests(self):
736 return self.verbose > 2
737
738 def _emit_timestamp(self, now=None):734 def _emit_timestamp(self, now=None):
739 """Emit a timestamp to the subunit stream.735 """Emit a timestamp to the subunit stream.
740736
@@ -869,8 +865,7 @@
869 The next output operation should be test_success(), test_error(), or865 The next output operation should be test_success(), test_error(), or
870 test_failure().866 test_failure().
871 """867 """
872 if self._time_tests:868 self._emit_timestamp()
873 self._emit_timestamp()
874 # Note that this always emits newlines, so it will function as well as869 # Note that this always emits newlines, so it will function as well as
875 # other start_test implementations if we are running in a subprocess.870 # other start_test implementations if we are running in a subprocess.
876 self._subunit.startTest(test)871 self._subunit.startTest(test)
@@ -885,8 +880,7 @@
885 self._stream.flush()880 self._stream.flush()
886881
887 def test_success(self, test, seconds):882 def test_success(self, test, seconds):
888 if self._time_tests:883 self._emit_timestamp()
889 self._emit_timestamp()
890 self._subunit.addSuccess(test)884 self._subunit.addSuccess(test)
891885
892 def import_errors(self, import_errors):886 def import_errors(self, import_errors):
@@ -923,8 +917,7 @@
923917
924 The next output operation should be stop_test().918 The next output operation should be stop_test().
925 """919 """
926 if self._time_tests:920 self._emit_timestamp()
927 self._emit_timestamp()
928 details = self._exc_info_to_details(exc_info)921 details = self._exc_info_to_details(exc_info)
929 self._subunit.addError(test, details=details)922 self._subunit.addError(test, details=details)
930923
@@ -935,8 +928,7 @@
935928
936 The next output operation should be stop_test().929 The next output operation should be stop_test().
937 """930 """
938 if self._time_tests:931 self._emit_timestamp()
939 self._emit_timestamp()
940 details = self._exc_info_to_details(exc_info)932 details = self._exc_info_to_details(exc_info)
941 self._subunit.addFailure(test, details=details)933 self._subunit.addFailure(test, details=details)
942934
943935
=== modified file 'src/zope/testing/testrunner/testrunner-subunit.txt'
--- src/zope/testing/testrunner/testrunner-subunit.txt 2010-03-12 14:47:00 +0000
+++ src/zope/testing/testrunner/testrunner-subunit.txt 2010-07-18 17:43:40 +0000
@@ -48,65 +48,6 @@
48 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ48 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
49 successful: samplelayers.Layer122:setUp49 successful: samplelayers.Layer122:setUp
50 tags: zope:layer:samplelayers.Layer12250 tags: zope:layer:samplelayers.Layer122
51 test: sample1.sampletests.test122.TestNotMuch.test_1
52 successful: sample1.sampletests.test122.TestNotMuch.test_1
53 test: sample1.sampletests.test122.TestNotMuch.test_2
54 successful: sample1.sampletests.test122.TestNotMuch.test_2
55 test: sample1.sampletests.test122.TestNotMuch.test_3
56 successful: sample1.sampletests.test122.TestNotMuch.test_3
57 test: sampletests.test122.TestNotMuch.test_1
58 successful: sampletests.test122.TestNotMuch.test_1
59 test: sampletests.test122.TestNotMuch.test_2
60 successful: sampletests.test122.TestNotMuch.test_2
61 test: sampletests.test122.TestNotMuch.test_3
62 successful: sampletests.test122.TestNotMuch.test_3
63 tags: -zope:layer:samplelayers.Layer122
64 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
65 test: samplelayers.Layer122:tearDown
66 tags: zope:layer
67 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
68 successful: samplelayers.Layer122:tearDown
69 tags: -zope:layer:samplelayers.Layer12
70 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
71 test: samplelayers.Layer12:tearDown
72 tags: zope:layer
73 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
74 successful: samplelayers.Layer12:tearDown
75 tags: -zope:layer:samplelayers.Layer1
76 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
77 test: samplelayers.Layer1:tearDown
78 tags: zope:layer
79 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
80 successful: samplelayers.Layer1:tearDown
81 False
82
83
84Timing tests
85------------
86
87When verbosity is high enough, the subunit stream includes timing information
88for the actual tests, as well as for the layers.
89
90 >>> sys.argv = 'test --layer 122 -vvv --subunit -t TestNotMuch'.split()
91 >>> testrunner.run_internal(defaults)
92 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
93 test: samplelayers.Layer1:setUp
94 tags: zope:layer
95 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
96 successful: samplelayers.Layer1:setUp
97 tags: zope:layer:samplelayers.Layer1
98 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
99 test: samplelayers.Layer12:setUp
100 tags: zope:layer
101 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
102 successful: samplelayers.Layer12:setUp
103 tags: zope:layer:samplelayers.Layer12
104 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
105 test: samplelayers.Layer122:setUp
106 tags: zope:layer
107 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
108 successful: samplelayers.Layer122:setUp
109 tags: zope:layer:samplelayers.Layer122
110 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ51 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
111 test: sample1.sampletests.test122.TestNotMuch.test_152 test: sample1.sampletests.test122.TestNotMuch.test_1
112 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ53 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
@@ -229,7 +170,9 @@
229 time: 2010-02-05 15:27:05.113545Z170 time: 2010-02-05 15:27:05.113545Z
230 successful: zope.testing.testrunner.layer.UnitTests:setUp171 successful: zope.testing.testrunner.layer.UnitTests:setUp
231 tags: zope:layer:zope.testing.testrunner.layer.UnitTests172 tags: zope:layer:zope.testing.testrunner.layer.UnitTests
173 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
232 test: sample2.sampletests_e.eek174 test: sample2.sampletests_e.eek
175 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
233 failure: sample2.sampletests_e.eek [ multipart176 failure: sample2.sampletests_e.eek [ multipart
234 Content-Type: text/x-traceback;charset=utf8,language=python177 Content-Type: text/x-traceback;charset=utf8,language=python
235 traceback178 traceback
@@ -257,11 +200,17 @@
257 0\r200 0\r
258 <BLANKLINE>201 <BLANKLINE>
259 ]202 ]
203 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
260 test: sample2.sampletests_e.Test.test1204 test: sample2.sampletests_e.Test.test1
205 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
261 successful: sample2.sampletests_e.Test.test1206 successful: sample2.sampletests_e.Test.test1
207 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
262 test: sample2.sampletests_e.Test.test2208 test: sample2.sampletests_e.Test.test2
209 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
263 successful: sample2.sampletests_e.Test.test2210 successful: sample2.sampletests_e.Test.test2
211 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
264 test: sample2.sampletests_e.Test.test3212 test: sample2.sampletests_e.Test.test3
213 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
265 error: sample2.sampletests_e.Test.test3 [ multipart214 error: sample2.sampletests_e.Test.test3 [ multipart
266 Content-Type: text/x-traceback;charset=utf8,language=python215 Content-Type: text/x-traceback;charset=utf8,language=python
267 traceback216 traceback
@@ -281,11 +230,17 @@
281 0\r230 0\r
282 <BLANKLINE>231 <BLANKLINE>
283 ]232 ]
233 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
284 test: sample2.sampletests_e.Test.test4234 test: sample2.sampletests_e.Test.test4
235 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
285 successful: sample2.sampletests_e.Test.test4236 successful: sample2.sampletests_e.Test.test4
237 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
286 test: sample2.sampletests_e.Test.test5238 test: sample2.sampletests_e.Test.test5
239 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
287 successful: sample2.sampletests_e.Test.test5240 successful: sample2.sampletests_e.Test.test5
241 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
288 test: e_txt242 test: e_txt
243 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
289 failure: e_txt [244 failure: e_txt [
290 multipart245 multipart
291 Content-Type: text/x-traceback;charset=utf8,language=python246 Content-Type: text/x-traceback;charset=utf8,language=python
@@ -344,7 +299,9 @@
344 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ299 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
345 successful: sample2.sampletests_ntd.Layer:setUp300 successful: sample2.sampletests_ntd.Layer:setUp
346 tags: zope:layer:sample2.sampletests_ntd.Layer301 tags: zope:layer:sample2.sampletests_ntd.Layer
302 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
347 test: sample2.sampletests_ntd.TestSomething.test_something303 test: sample2.sampletests_ntd.TestSomething.test_something
304 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
348 successful: sample2.sampletests_ntd.TestSomething.test_something305 successful: sample2.sampletests_ntd.TestSomething.test_something
349 tags: -zope:layer:sample2.sampletests_ntd.Layer306 tags: -zope:layer:sample2.sampletests_ntd.Layer
350 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ307 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
@@ -434,7 +391,9 @@
434 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ391 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
435 successful: sample1.sampletests_ntd.Layer:setUp392 successful: sample1.sampletests_ntd.Layer:setUp
436 tags: zope:layer:sample1.sampletests_ntd.Layer393 tags: zope:layer:sample1.sampletests_ntd.Layer
394 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
437 test: sample1.sampletests_ntd.TestSomething.test_something395 test: sample1.sampletests_ntd.TestSomething.test_something
396 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
438 successful: sample1.sampletests_ntd.TestSomething.test_something397 successful: sample1.sampletests_ntd.TestSomething.test_something
439 tags: -zope:layer:sample1.sampletests_ntd.Layer398 tags: -zope:layer:sample1.sampletests_ntd.Layer
440 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ399 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
@@ -453,7 +412,9 @@
453 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ412 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
454 successful: sample2.sampletests_ntd.Layer:setUp413 successful: sample2.sampletests_ntd.Layer:setUp
455 tags: zope:layer:sample2.sampletests_ntd.Layer414 tags: zope:layer:sample2.sampletests_ntd.Layer
415 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
456 test: sample2.sampletests_ntd.TestSomething.test_something416 test: sample2.sampletests_ntd.TestSomething.test_something
417 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
457 successful: sample2.sampletests_ntd.TestSomething.test_something418 successful: sample2.sampletests_ntd.TestSomething.test_something
458 tags: -zope:layer:sample2.sampletests_ntd.Layer419 tags: -zope:layer:sample2.sampletests_ntd.Layer
459 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ420 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
@@ -472,7 +433,9 @@
472 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ433 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
473 successful: sample3.sampletests_ntd.Layer:setUp434 successful: sample3.sampletests_ntd.Layer:setUp
474 tags: zope:layer:sample3.sampletests_ntd.Layer435 tags: zope:layer:sample3.sampletests_ntd.Layer
436 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
475 test: sample3.sampletests_ntd.TestSomething.test_error1437 test: sample3.sampletests_ntd.TestSomething.test_error1
438 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
476 error: sample3.sampletests_ntd.TestSomething.test_error1 [ multipart439 error: sample3.sampletests_ntd.TestSomething.test_error1 [ multipart
477 Content-Type: text/x-traceback;charset=utf8,language=python440 Content-Type: text/x-traceback;charset=utf8,language=python
478 traceback441 traceback
@@ -485,7 +448,9 @@
485 0\r448 0\r
486 <BLANKLINE>449 <BLANKLINE>
487 ]450 ]
451 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
488 test: sample3.sampletests_ntd.TestSomething.test_error2452 test: sample3.sampletests_ntd.TestSomething.test_error2
453 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
489 error: sample3.sampletests_ntd.TestSomething.test_error2 [ multipart454 error: sample3.sampletests_ntd.TestSomething.test_error2 [ multipart
490 Content-Type: text/x-traceback;charset=utf8,language=python455 Content-Type: text/x-traceback;charset=utf8,language=python
491 traceback456 traceback
@@ -498,7 +463,9 @@
498 0\r463 0\r
499 <BLANKLINE>464 <BLANKLINE>
500 ]465 ]
466 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
501 test: sample3.sampletests_ntd.TestSomething.test_fail1467 test: sample3.sampletests_ntd.TestSomething.test_fail1
468 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
502 failure: sample3.sampletests_ntd.TestSomething.test_fail1 [ multipart469 failure: sample3.sampletests_ntd.TestSomething.test_fail1 [ multipart
503 Content-Type: text/x-traceback;charset=utf8,language=python470 Content-Type: text/x-traceback;charset=utf8,language=python
504 traceback471 traceback
@@ -511,7 +478,9 @@
511 0\r478 0\r
512 <BLANKLINE>479 <BLANKLINE>
513 ]480 ]
481 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
514 test: sample3.sampletests_ntd.TestSomething.test_fail2482 test: sample3.sampletests_ntd.TestSomething.test_fail2
483 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
515 failure: sample3.sampletests_ntd.TestSomething.test_fail2 [ multipart484 failure: sample3.sampletests_ntd.TestSomething.test_fail2 [ multipart
516 Content-Type: text/x-traceback;charset=utf8,language=python485 Content-Type: text/x-traceback;charset=utf8,language=python
517 traceback486 traceback
@@ -524,9 +493,13 @@
524 0\r493 0\r
525 <BLANKLINE>494 <BLANKLINE>
526 ]495 ]
496 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
527 test: sample3.sampletests_ntd.TestSomething.test_something497 test: sample3.sampletests_ntd.TestSomething.test_something
498 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
528 successful: sample3.sampletests_ntd.TestSomething.test_something499 successful: sample3.sampletests_ntd.TestSomething.test_something
500 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
529 test: sample3.sampletests_ntd.TestSomething.test_something_else501 test: sample3.sampletests_ntd.TestSomething.test_something_else
502 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
530 successful: sample3.sampletests_ntd.TestSomething.test_something_else503 successful: sample3.sampletests_ntd.TestSomething.test_something_else
531 tags: -zope:layer:sample3.sampletests_ntd.Layer504 tags: -zope:layer:sample3.sampletests_ntd.Layer
532 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ505 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
@@ -549,7 +522,9 @@
549 time: 2010-02-10 22:41:25.279695Z522 time: 2010-02-10 22:41:25.279695Z
550 successful: sample1.sampletests_ntd.Layer:setUp523 successful: sample1.sampletests_ntd.Layer:setUp
551 tags: zope:layer:sample1.sampletests_ntd.Layer524 tags: zope:layer:sample1.sampletests_ntd.Layer
525 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
552 test: sample1.sampletests_ntd.TestSomething.test_something526 test: sample1.sampletests_ntd.TestSomething.test_something
527 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
553 successful: sample1.sampletests_ntd.TestSomething.test_something528 successful: sample1.sampletests_ntd.TestSomething.test_something
554 tags: -zope:layer:sample1.sampletests_ntd.Layer529 tags: -zope:layer:sample1.sampletests_ntd.Layer
555 time: 2010-02-10 22:41:25.310078Z530 time: 2010-02-10 22:41:25.310078Z
@@ -568,7 +543,9 @@
568 time: 2010-02-10 22:41:25.753079Z543 time: 2010-02-10 22:41:25.753079Z
569 successful: sample2.sampletests_ntd.Layer:setUp544 successful: sample2.sampletests_ntd.Layer:setUp
570 tags: zope:layer:sample2.sampletests_ntd.Layer545 tags: zope:layer:sample2.sampletests_ntd.Layer
546 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
571 test: sample2.sampletests_ntd.TestSomething.test_something547 test: sample2.sampletests_ntd.TestSomething.test_something
548 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
572 successful: sample2.sampletests_ntd.TestSomething.test_something549 successful: sample2.sampletests_ntd.TestSomething.test_something
573 tags: -zope:layer:sample2.sampletests_ntd.Layer550 tags: -zope:layer:sample2.sampletests_ntd.Layer
574 time: 2010-02-10 22:41:25.779256Z551 time: 2010-02-10 22:41:25.779256Z
@@ -587,7 +564,9 @@
587 time: 2010-02-10 22:41:26.310299Z564 time: 2010-02-10 22:41:26.310299Z
588 successful: sample3.sampletests_ntd.Layer:setUp565 successful: sample3.sampletests_ntd.Layer:setUp
589 tags: zope:layer:sample3.sampletests_ntd.Layer566 tags: zope:layer:sample3.sampletests_ntd.Layer
567 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
590 test: sample3.sampletests_ntd.TestSomething.test_error1568 test: sample3.sampletests_ntd.TestSomething.test_error1
569 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
591 error: sample3.sampletests_ntd.TestSomething.test_error1 [ multipart570 error: sample3.sampletests_ntd.TestSomething.test_error1 [ multipart
592 Content-Type: text/x-traceback;charset=utf8,language=python571 Content-Type: text/x-traceback;charset=utf8,language=python
593 traceback572 traceback
@@ -605,7 +584,9 @@
605 test: Can't post-mortem debug when running a layer as a subprocess!584 test: Can't post-mortem debug when running a layer as a subprocess!
606 tags: zope:error_with_banner585 tags: zope:error_with_banner
607 successful: Can't post-mortem debug when running a layer as a subprocess!586 successful: Can't post-mortem debug when running a layer as a subprocess!
587 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
608 test: sample3.sampletests_ntd.TestSomething.test_error2588 test: sample3.sampletests_ntd.TestSomething.test_error2
589 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
609 error: sample3.sampletests_ntd.TestSomething.test_error2 [ multipart590 error: sample3.sampletests_ntd.TestSomething.test_error2 [ multipart
610 Content-Type: text/x-traceback;charset=utf8,language=python591 Content-Type: text/x-traceback;charset=utf8,language=python
611 traceback592 traceback
@@ -623,7 +604,9 @@
623 test: Can't post-mortem debug when running a layer as a subprocess!604 test: Can't post-mortem debug when running a layer as a subprocess!
624 tags: zope:error_with_banner605 tags: zope:error_with_banner
625 successful: Can't post-mortem debug when running a layer as a subprocess!606 successful: Can't post-mortem debug when running a layer as a subprocess!
607 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
626 test: sample3.sampletests_ntd.TestSomething.test_fail1608 test: sample3.sampletests_ntd.TestSomething.test_fail1
609 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
627 error: sample3.sampletests_ntd.TestSomething.test_fail1 [ multipart610 error: sample3.sampletests_ntd.TestSomething.test_fail1 [ multipart
628 Content-Type: text/x-traceback;charset=utf8,language=python611 Content-Type: text/x-traceback;charset=utf8,language=python
629 traceback612 traceback
@@ -643,7 +626,9 @@
643 test: Can't post-mortem debug when running a layer as a subprocess!626 test: Can't post-mortem debug when running a layer as a subprocess!
644 tags: zope:error_with_banner627 tags: zope:error_with_banner
645 successful: Can't post-mortem debug when running a layer as a subprocess!628 successful: Can't post-mortem debug when running a layer as a subprocess!
629 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
646 test: sample3.sampletests_ntd.TestSomething.test_fail2630 test: sample3.sampletests_ntd.TestSomething.test_fail2
631 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
647 error: sample3.sampletests_ntd.TestSomething.test_fail2 [ multipart632 error: sample3.sampletests_ntd.TestSomething.test_fail2 [ multipart
648 Content-Type: text/x-traceback;charset=utf8,language=python633 Content-Type: text/x-traceback;charset=utf8,language=python
649 traceback634 traceback
@@ -663,9 +648,13 @@
663 test: Can't post-mortem debug when running a layer as a subprocess!648 test: Can't post-mortem debug when running a layer as a subprocess!
664 tags: zope:error_with_banner649 tags: zope:error_with_banner
665 successful: Can't post-mortem debug when running a layer as a subprocess!650 successful: Can't post-mortem debug when running a layer as a subprocess!
651 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
666 test: sample3.sampletests_ntd.TestSomething.test_something652 test: sample3.sampletests_ntd.TestSomething.test_something
653 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
667 successful: sample3.sampletests_ntd.TestSomething.test_something654 successful: sample3.sampletests_ntd.TestSomething.test_something
655 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
668 test: sample3.sampletests_ntd.TestSomething.test_something_else656 test: sample3.sampletests_ntd.TestSomething.test_something_else
657 time: YYYY-MM-DD HH:MM:SS.mmmmmmZ
669 successful: sample3.sampletests_ntd.TestSomething.test_something_else658 successful: sample3.sampletests_ntd.TestSomething.test_something_else
670 tags: -zope:layer:sample3.sampletests_ntd.Layer659 tags: -zope:layer:sample3.sampletests_ntd.Layer
671 time: 2010-02-10 22:41:26.340878Z660 time: 2010-02-10 22:41:26.340878Z

Subscribers

People subscribed via source and target branches