Review Request: TestRunner-displayFailureReasons.1.cs

Christoph Thiede via Squeak-dev <[email protected]> Tue, 7 Jul 2026 18:47:51 +0200
Newsgroups gmane.comp.lang.smalltalk.squeak.general
Message-ID <0c4066d5-a952-4ab3-a59a-b307f8cfca1a@MX2025-DAG1.hpi.uni-potsdam.de>
=============== Summary ===============

Change Set:        TestRunner-displayFailureReasons
Date:            7 July 2026
Author:            Christoph Thiede

Proposal: In the Test Runner, indicate unexpected passes and timeouts in the failure list to reduce confusion why clicking on them does not bring up a debugger.

=============== Diff ===============

TestResult>>isTimeout: {testing} · ct 7/7/2026 18:36
+ isTimeout: aTestCase
+ 
+     ^self timeouts includes: aTestCase
+             

TestResult>>isUnexpectedPass: {testing} · ct 7/7/2026 18:43
+ isUnexpectedPass: aTestCase
+ 
+     ^self unexpectedPasses includes: aTestCase

TestResult>>timeouts {accessing} · ct 7/7/2026 18:36
+ timeouts
+     ^ timeouts

TestRunner>>failedLabelFor: {accessing-testing} · ct 7/7/2026 18:43
+ failedLabelFor: aTestCase
+     ^ (true
+         caseOf:
+             {[self result isTimeout: aTestCase] -> ['{1} (timeout)' translated].
+             [self result isUnexpectedPass: aTestCase] -> ['{1} (unexpected pass)' translated]}
+         otherwise: ['{1}' translated])
+             format: {aTestCase printString}

TestRunner>>failedList {accessing-testing} · ct 7/7/2026 18:35 (changed)
failedList
-     ^ failedList collect: [ :each | each printString ].
+     ^ failedList collect: [ :each | self failedLabelFor: each ].

-- 
Sent from Squeak Inbox Talk

Squeak-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]
TestRunner-displayFailureReasons.1.cs (text/squeak-changes, 1.2 KB)
'From Squeak6.1beta of 7 July 2026 [latest update: #23883] on 7 July 2026 at 6:45:56 pm'!
"Change Set:		TestRunner-displayFailureReasons
Date:			7 July 2026
Author:			Christoph Thiede

Proposal: In the Test Runner, indicate unexpected passes and timeouts in the failure list to reduce confusion why clicking on them does not bring up a debugger."!


!TestResult methodsFor: 'accessing' stamp: 'ct 7/7/2026 18:36'!
timeouts
	^ timeouts! !

!TestResult methodsFor: 'testing' stamp: 'ct 7/7/2026 18:36'!
isTimeout: aTestCase

	^self timeouts includes: aTestCase
			! !

!TestResult methodsFor: 'testing' stamp: 'ct 7/7/2026 18:43'!
isUnexpectedPass: aTestCase

	^self unexpectedPasses includes: aTestCase! !


!TestRunner methodsFor: 'accessing-testing' stamp: 'ct 7/7/2026 18:43'!
failedLabelFor: aTestCase
	^ (true
		caseOf:
			{[self result isTimeout: aTestCase] -> ['{1} (timeout)' translated].
			[self result isUnexpectedPass: aTestCase] -> ['{1} (unexpected pass)' translated]}
		otherwise: ['{1}' translated])
			format: {aTestCase printString}! !

!TestRunner methodsFor: 'accessing-testing' stamp: 'ct 7/7/2026 18:35'!
failedList
	^ failedList collect: [ :each | self failedLabelFor: each ].! !
Screenshot from 2026-07-07 18-46-29.png (image/png, 295.9 KB) - not displayed