Torsten Bergmann uploaded a new version of ToolsTests to project The Trunk:
http://source.squeak.org/trunk/ToolsTests-tbn.5.mcz==================== Summary ====================
Name: ToolsTests-tbn.5
Author: tbn
Time: 15 April 2010, 11:19:01.066 am
UUID: 35fefd63-e097-c248-8c78-f6532dd339ef
Ancestors: ToolsTests-ar.4
categorize methods
=============== Diff against ToolsTests-ar.4 ===============
Item was changed:
+ ----- Method: DebuggerUnwindBug>>testUnwindDebugger (in category 'testing') -----
- ----- Method: DebuggerUnwindBug>>testUnwindDebugger (in category 'as yet unclassified') -----
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 openInterrupt: 'test' onProcess: process.
"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.!
Item was changed:
+ ----- Method: DebuggerUnwindBug>>testUnwindBlock (in category 'testing') -----
- ----- Method: DebuggerUnwindBug>>testUnwindBlock (in category 'as yet unclassified') -----
testUnwindBlock
"test if unwind blocks work properly"
| sema process |
sema := Semaphore forMutualExclusion.
self assert: sema isSignaled.
"deadlock on the semaphore"
process := [sema critical:[sema wait]] forkAt: Processor userInterruptPriority.
self deny: sema isSignaled.
"terminate process"
process terminate.
self assert: sema isSignaled.
!