Marcel Taeumel uploaded a new version of ToolsTests to project The Trunk: http://source.squeak.org/trunk/ToolsTests-mt.124.mcz
==================== Summary ====================
Name: ToolsTests-mt.124 Author: mt Time: 28 November 2023, 10:33:56.289569 am UUID: e5ba6516-0228-b641-abe6-c81cdd6d3731 Ancestors: ToolsTests-mt.123
Complements Tools-mt.1241
=============== Diff against ToolsTests-mt.123 ===============
Item was changed: ----- Method: DebuggerTests>>test06DebugSpecificContext (in category 'tests') ----- test06DebugSpecificContext | context |
process := [ #(1 2 3) collect: [:ea | ea odd ifTrue: [ ea ] ifFalse: [ Processor activeProcess suspend ] ] ] newProcess. process priority: Processor activeProcess priority + 1. process resume.
"Find specific context by following #sender chain." context := process suspendedContext. [context selector = #collect: ] whileFalse: [context := context sender].
+ debugger := ToolSet debugWithCue: (DebuggerInvocationCue new + process: process; + context: context; + label: 'test06DebugSpecificContext'; + "contents: nil;" + fullView: true; + yourself). - debugger := ToolSet debugProcess: process context: context label: 'test06DebugSpecificContext' contents: nil fullView: true.
self assert: debugger contextStackTop = context.!
Item was changed: ----- Method: DebuggerTestsToolSet>>debugProcess:context:label:contents:fullView: (in category 'debugging') ----- debugProcess: aProcess context: aContext label: aString contents: contents fullView: aBool
+ self flag: #deprecated. + ^ self debugWithCue: (DebuggerInvocationCue new + process: aProcess; + context: aContext; + label: aString; + contents: contents; + fullView: aBool; + yourself) + ! - (data at: #debuggedProcesses ifAbsentPut: [OrderedCollection new]) - add: aProcess. - - aProcess suspend.!
Item was added: + ----- Method: DebuggerTestsToolSet>>debugWithCue: (in category 'debugging') ----- + debugWithCue: invocationCue + + (data at: #debuggedProcesses ifAbsentPut: [OrderedCollection new]) + add: invocationCue process. + + invocationCue process suspend.!
Item was changed: ----- Method: DebuggerUnwindBug>>testUnwindDebugger (in category 'tests') ----- testUnwindDebugger "test if unwind blocks work properly when a debugger is closed" | sema process debugger top | sema := Semaphore forMutualExclusion. self assert: sema isSignaled. process := [sema critical:[sema wait]] forkAt: Processor userInterruptPriority. self deny: sema isSignaled.
"everything set up here - open a debug notifier" + debugger := Debugger openOnCue: (DebuggerInvocationCue new + process: process; + context: process suspendedContext; + label: 'test'; + "contents: nil;" + fullView: false; + yourself). - debugger := Debugger - openOn: process - context: process suspendedContext - label: 'test' - contents: nil - fullView: false. "get into the debugger" debugger debug. top := debugger topView. "set top context" debugger toggleContextStackIndex: 1. "close debugger" top delete. "and see if unwind protection worked" self assert: sema isSignaled.!
packages@lists.squeakfoundation.org