[squeak-dev] The Trunk: ToolsTests-ct.114.mcz

commits at source.squeak.org commits at source.squeak.org
Tue Jun 14 09:04:55 UTC 2022


Christoph Thiede uploaded a new version of ToolsTests to project The Trunk:
http://source.squeak.org/trunk/ToolsTests-ct.114.mcz

==================== Summary ====================

Name: ToolsTests-ct.114
Author: ct
Time: 14 June 2022, 11:04:38.527623 am
UUID: 0e270251-8f16-4341-8c33-1d132d201bde
Ancestors: ToolsTests-mt.113

Fixes DebuggerTests>>#test20TerminateProcess. Complements Tools-mt.1163.

=============== Diff against ToolsTests-mt.113 ===============

Item was changed:
  ----- Method: DebuggerTests>>test20TerminateProcess (in category 'tests') -----
  test20TerminateProcess
  	"When the debugger's process is terminated, all unwind contexts, including already entered ones, are executed. Further errors that occur during unwinding lead to another debugger showing up. This is the acceptance test equivalent for ProcessTest >> #testTerminateNestedUnwind."
  
+ 	| x y z userProcess userProcess2 |
- 	| x y z userProcess |
  	process := Process
  		forBlock:
  			[[x := 1] ensure: 
  				[[y := 1.
  				self error: #first.
  				y := 2] ensure:
  					[z := 1.
  					self error: #second.
  					z := 2]].
  			x := 2]
  		runUntil: [:ctx | y = 1].
  	self should: {x. y. z} = {1. 1. nil}.
  	debugger := process debug.
  	
  	userProcess := [debugger proceed] forkAt: Processor activePriority + 1.
  	Processor yield.
  	self findDebugger.
  	
  	self deny: process isTerminated.
  	self assert: userProcess isTerminated.
  	self deny: debugger isNil.
  	self assert: {1. 1. nil} equals: {x. y. z}.
  	self assert: (debugger containingWindow label includesSubstring: #first).
  	
  	userProcess := [debugger terminateProcess] forkAt: Processor activePriority + 1.
  	Processor yield.
  	self findDebugger.
  	
  	self deny: process isTerminated.
+ 	self deny: userProcess isTerminated.
- 	self assert: userProcess isTerminated.
  	self deny: debugger isNil.
  	self assert: {1. 2. 1} equals: {x. y. z}.
  	self assert: (debugger containingWindow label includesSubstring: #second).
  	
+ 	userProcess2 := [debugger proceed] forkAt: Processor activePriority + 1.
- 	userProcess := [debugger proceed] forkAt: Processor activePriority + 1.
  	Processor yield.
  	self findDebugger.
  	
  	self assert: process isTerminated.
  	self assert: userProcess isTerminated.
+ 	self assert: userProcess2 isTerminated.
  	self assert: debugger isNil.
  	self assert: {1. 2. 2} equals: {x. y. z}.!



More information about the Squeak-dev mailing list