Marcel Taeumel uploaded a new version of SUnitTools to project The Trunk: http://source.squeak.org/trunk/SUnitTools-mt.7.mcz
==================== Summary ====================
Name: SUnitTools-mt.7 Author: mt Time: 27 April 2022, 3:51:23.40004 pm UUID: aea49274-5dca-df45-aa76-a434ef13a552 Ancestors: SUnitTools-ct.6, SUnitTools-jr.6
Merge SUnitTools-jr.6
Allow to create a new test class immediately if none is found.
Preselect tests category when browsing a class without a matching test method. Create the tests category in new classes.
=============== Diff against SUnitTools-ct.6 ===============
Item was added: + ----- Method: BasicClassOrganizer>>categoryForTestCases (in category '*SUnitTools-accessing') ----- + categoryForTestCases + ^ self categories + detect: [:each | each beginsWith: 'test'] + ifNone: [Categorizer allCategory]!
Item was added: + ----- Method: CodeHolder>>testAskToCreateNewTest: (in category '*SUnitTools-running') ----- + testAskToCreateNewTest: className + | newClass | + (self confirm: 'Test class not found. Create one?') ifFalse: [^ false]. + (ClassBuilder new) + name: className asSymbol + inEnvironment: self selectedClass environment + subclassOf: TestCase + type: #normal + instanceVariableNames: '' + classVariableNames: '' + poolDictionaries: '' + category: + ((self selectedClass category includes: $-) + ifTrue: [((self selectedClass category copyUpToLast: $-), '-Tests')] + ifFalse: [(self selectedClass category, 'Tests')]) asSymbol. + newClass := self selectedClass environment classNamed: className asSymbol. + newClass organization addCategory: #tests. + ^ true!
Item was changed: ----- Method: CodeHolder>>testBrowseClassNamed:possibleMessageNamed: (in category '*SUnitTools-running') ----- testBrowseClassNamed: aClassName possibleMessageNamed: aMessageName | cls selector | + (self class environment hasClassNamed: aClassName) ifFalse: + [(self testAskToCreateNewTest: aClassName) ifFalse: [^ false]]. - (self class environment hasClassNamed: aClassName) - ifFalse: [^ false]. cls := self class environment classNamed: aClassName.
(aMessageName notNil and: [cls includesLocalSelector: (selector := aMessageName asSymbol)]) ifTrue: [ToolSet browse: cls selector: selector] + ifFalse: + [ToolSet + browseClass: cls + category: cls organization categoryForTestCases]. - ifFalse: [ToolSet browseClass: cls]. - ^ true!
packages@lists.squeakfoundation.org