=============================================================================== Notice: Cannot read stored value of #notExistingClassStoredSettingSTONString. Exception: KeyNotFound: key #MockNotExistingClass not found in SystemDictionary =============================================================================== =============================================================================== Notice: There are references to, 'RPackageNewStubClass' from Undeclared. Check them after this change. =============================================================================== =============================================================================== Notice: There are references to, 'RPackageNewStubClass' from Undeclared. Check them after this change. =============================================================================== =============================================================================== Notice: There are references to, 'RPackageNewStubClass' from Undeclared. Check them after this change. =============================================================================== =============================================================================== Notice: There are references to, 'RPackageNewStubClass' from Undeclared. Check them after this change. =============================================================================== =============================================================================== Notice: There are references to, 'RPackageNewStubClass' from Undeclared. Check them after this change. =============================================================================== =============================================================================== Notice: There are references to, 'RPackageNewStubClass' from Undeclared. Check them after this change. =============================================================================== =============================================================================== Notice: There are references to, #ClassForTestToBeDeleted11 from Undeclared. Check them after this change. =============================================================================== =============================================================================== Notice: There are references to, #TraitForTestToBeDeleted1 from Undeclared. Check them after this change. =============================================================================== =============================================================================== Notice: There are references to, #ClassForTestToBeDeleted44 from Undeclared. Check them after this change. =============================================================================== =============================================================================== Notice: There are references to, #TraitForTestToBeDeleted1 from Undeclared. Check them after this change. =============================================================================== =============================================================================== Notice: There are references to, #ClassForTestToBeDeleted79 from Undeclared. Check them after this change. =============================================================================== =============================================================================== Notice: There are references to, #TraitForTestToBeDeleted1 from Undeclared. Check them after this change. =============================================================================== =============================================================================== Notice: Filed out to: /Users/lse/Workspace/workspace/pharo-vm_pharo-10/runTests/Traits-Tests-FileOut.st Click to open location =============================================================================== =============================================================================== Notice: Filed out to: /Users/lse/Workspace/workspace/pharo-vm_pharo-10/runTests/T6.st Click to open location =============================================================================== =============================================================================== Notice: **Debugger opening error** Original error: test session. Debugger error: a UndefinedObject =============================================================================== THERE_BE_DRAGONS_HERE Original error: test session. Debugger error: a UndefinedObject 16 August 2023 8:35:14.799845 pm VM: Mac OS - arm64 - 1000 - CoInterpreter VMMaker-tonel.1 uuid: 9015d8ff-6ebf-0d00-86f2-0f8808bb343c Aug 16 2023 StackToRegisterMappingCogit VMMaker-tonel.1 uuid: 9015d8ff-6ebf-0d00-86f2-0f8808bb343c Aug 16 2023 v10.0.6 - Commit: b67609b9 - Date: 2023-08-16 18:51:13 +0200 Image: Pharo11.0.0 [Build information: Pharo-11.0.0+build.704.sha.7e0219e7f720faf2cfd6083adef507741de47cf2 (64 Bit)] [ Set new ] in OupsDummyDebugger class>>dummySession Receiver: OupsDummyDebugger Arguments and temporary variables: context: nil process: nil session: nil Receiver's instance variables: superclass: Object methodDict: a MethodDictionary(#beError->OupsDummyDebugger>>#beError #beUnu[..] format: 65541 layout: a FixedLayout organization: a ClassOrganization commentSourcePointer: nil subclasses: nil name: #OupsDummyDebugger classPool: nil sharedPools: an OrderedCollection() environment: a SystemDictionary(lots of globals) category: #'Debugger-Oups-Tests-Utils' --- The full stack --- [ Set new ] in OupsDummyDebugger class>>dummySession ------------------------------------------------------------------------------- =============================================================================== Notice: **Debugger opening error** Original error: test session. Debugger error: Error =============================================================================== THERE_BE_DRAGONS_HERE Original error: test session. Debugger error: Error 16 August 2023 8:35:14.810545 pm VM: Mac OS - arm64 - 1000 - CoInterpreter VMMaker-tonel.1 uuid: 9015d8ff-6ebf-0d00-86f2-0f8808bb343c Aug 16 2023 StackToRegisterMappingCogit VMMaker-tonel.1 uuid: 9015d8ff-6ebf-0d00-86f2-0f8808bb343c Aug 16 2023 v10.0.6 - Commit: b67609b9 - Date: 2023-08-16 18:51:13 +0200 Image: Pharo11.0.0 [Build information: Pharo-11.0.0+build.704.sha.7e0219e7f720faf2cfd6083adef507741de47cf2 (64 Bit)] [ Set new ] in OupsDummyDebugger class>>dummySession Receiver: OupsDummyDebugger Arguments and temporary variables: context: nil process: nil session: nil Receiver's instance variables: superclass: Object methodDict: a MethodDictionary(#beError->OupsDummyDebugger>>#beError #beUnu[..] format: 65541 layout: a FixedLayout organization: a ClassOrganization commentSourcePointer: nil subclasses: nil name: #OupsDummyDebugger classPool: nil sharedPools: an OrderedCollection() environment: a SystemDictionary(lots of globals) category: #'Debugger-Oups-Tests-Utils' --- The full stack --- [ Set new ] in OupsDummyDebugger class>>dummySession ------------------------------------------------------------------------------- =============================================================================== Notice: **Debugger opening error** Original error: test session. Debugger error: Error =============================================================================== THERE_BE_DRAGONS_HERE Original error: test session. Debugger error: Error 16 August 2023 8:35:14.812097 pm VM: Mac OS - arm64 - 1000 - CoInterpreter VMMaker-tonel.1 uuid: 9015d8ff-6ebf-0d00-86f2-0f8808bb343c Aug 16 2023 StackToRegisterMappingCogit VMMaker-tonel.1 uuid: 9015d8ff-6ebf-0d00-86f2-0f8808bb343c Aug 16 2023 v10.0.6 - Commit: b67609b9 - Date: 2023-08-16 18:51:13 +0200 Image: Pharo11.0.0 [Build information: Pharo-11.0.0+build.704.sha.7e0219e7f720faf2cfd6083adef507741de47cf2 (64 Bit)] [ Set new ] in OupsDummyDebugger class>>dummySession Receiver: OupsDummyDebugger Arguments and temporary variables: context: nil process: nil session: nil Receiver's instance variables: superclass: Object methodDict: a MethodDictionary(#beError->OupsDummyDebugger>>#beError #beUnu[..] format: 65541 layout: a FixedLayout organization: a ClassOrganization commentSourcePointer: nil subclasses: nil name: #OupsDummyDebugger classPool: nil sharedPools: an OrderedCollection() environment: a SystemDictionary(lots of globals) category: #'Debugger-Oups-Tests-Utils' --- The full stack --- [ Set new ] in OupsDummyDebugger class>>dummySession ------------------------------------------------------------------------------- =============================================================================== Notice: No users found. =============================================================================== THERE_BE_DRAGONS_HERE 16 August 2023 8:36:26.512907 pm VM: Mac OS - arm64 - 1000 - CoInterpreter VMMaker-tonel.1 uuid: 9015d8ff-6ebf-0d00-86f2-0f8808bb343c Aug 16 2023 StackToRegisterMappingCogit VMMaker-tonel.1 uuid: 9015d8ff-6ebf-0d00-86f2-0f8808bb343c Aug 16 2023 v10.0.6 - Commit: b67609b9 - Date: 2023-08-16 18:51:13 +0200 Image: Pharo11.0.0 [Build information: Pharo-11.0.0+build.704.sha.7e0219e7f720faf2cfd6083adef507741de47cf2 (64 Bit)] [ Halt now ] in [ manager register: (TestSessionHandler onStartup: [ Halt now ]). session errorHandler: (TestStartupUIManager new sessionManager: manager; yourself). self shouldnt: [ session start: false ] raise: Halt. self assert: (session instVarNamed: 'deferredStartupActions') size equals: 1] in SessionErrorHandlingTest>>testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenStartupUiManagerActive Receiver: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenS[..] Arguments and temporary variables: x Receiver's instance variables: testSelector: #testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenSt[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession TestSessionHandler>>startup: Receiver: a TestSessionHandler Arguments and temporary variables: isImageStarting: false Receiver's instance variables: startupHandler: [ Halt now ] shutdownHandler: nil [ :each | each startup: isImageStarting ] in TestWorkingSession(WorkingSession)>>runStartup: Receiver: a TestWorkingSession Arguments and temporary variables: isImageStarting: false each: a TestSessionHandler Receiver's instance variables: manager: a SessionManager deferredStartupActions: an OrderedCollection() id: nil creationTime: 2023-08-16T20:36:26.491472+02:00 properties: a Dictionary() errors: an OrderedCollection() errorHandler: a TestStartupUIManager [aBlock value: each] in [ :each | [aBlock value: each] on: Exception do: [ :error | self errorHandler handleError: error] ] in TestWorkingSession(WorkingSession)>>runList:do: Receiver: a TestWorkingSession Arguments and temporary variables: aList: an Array(a TestSessionHandler) aBlock: [ :each | each startup: isImageStarting ] each: a TestSessionHandler Receiver's instance variables: manager: a SessionManager deferredStartupActions: an OrderedCollection() id: nil creationTime: 2023-08-16T20:36:26.491472+02:00 properties: a Dictionary() errors: an OrderedCollection() errorHandler: a TestStartupUIManager FullBlockClosure(BlockClosure)>>on:do: Receiver: [aBlock value: each] Arguments and temporary variables: exception: Exception handlerAction: [ :error | self errorHandler handleError: error] Receiver's instance variables: outerContext: [ :each | [aBlock value: each] on: Exception do: [ :e[..] compiledBlock: a CompiledBlock: [aBlock value: each] numArgs: 0 receiver: a TestWorkingSession [ :each | [aBlock value: each] on: Exception do: [ :error | self errorHandler handleError: error] ] in TestWorkingSession(WorkingSession)>>runList:do: Receiver: a TestWorkingSession Arguments and temporary variables: aList: an Array(a TestSessionHandler) aBlock: [ :each | each startup: isImageStarting ] each: a TestSessionHandler Receiver's instance variables: manager: a SessionManager deferredStartupActions: an OrderedCollection() id: nil creationTime: 2023-08-16T20:36:26.491472+02:00 properties: a Dictionary() errors: an OrderedCollection() errorHandler: a TestStartupUIManager Array(SequenceableCollection)>>do: Receiver: an Array(a TestSessionHandler) Arguments and temporary variables: aBlock: [ :each | [aBlock value: each] on: Exception do: [ :error |[..] index: 1 Receiver's instance variables: an Array(a TestSessionHandler) TestWorkingSession(WorkingSession)>>runList:do: Receiver: a TestWorkingSession Arguments and temporary variables: aList: an Array(a TestSessionHandler) aBlock: [ :each | each startup: isImageStarting ] Receiver's instance variables: manager: a SessionManager deferredStartupActions: an OrderedCollection() id: nil creationTime: 2023-08-16T20:36:26.491472+02:00 properties: a Dictionary() errors: an OrderedCollection() errorHandler: a TestStartupUIManager TestWorkingSession(WorkingSession)>>runStartup: Receiver: a TestWorkingSession Arguments and temporary variables: isImageStarting: false Receiver's instance variables: manager: a SessionManager deferredStartupActions: an OrderedCollection() id: nil creationTime: 2023-08-16T20:36:26.491472+02:00 properties: a Dictionary() errors: an OrderedCollection() errorHandler: a TestStartupUIManager TestWorkingSession>>start: Receiver: a TestWorkingSession Arguments and temporary variables: isImageStarting: false Receiver's instance variables: manager: a SessionManager deferredStartupActions: an OrderedCollection() id: nil creationTime: 2023-08-16T20:36:26.491472+02:00 properties: a Dictionary() errors: an OrderedCollection() errorHandler: a TestStartupUIManager [ session start: false ] in [ manager register: (TestSessionHandler onStartup: [ Halt now ]). session errorHandler: (TestStartupUIManager new sessionManager: manager; yourself). self shouldnt: [ session start: false ] raise: Halt. self assert: (session instVarNamed: 'deferredStartupActions') size equals: 1] in SessionErrorHandlingTest>>testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenStartupUiManagerActive Receiver: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenS[..] Arguments and temporary variables: x Receiver's instance variables: testSelector: #testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenSt[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession [ aBlock value. false ] in SessionErrorHandlingTest(TestAsserter)>>executeShould:inScopeOf: Receiver: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenS[..] Arguments and temporary variables: aBlock: [ session start: false ] anExceptionalEvent: Halt Receiver's instance variables: testSelector: #testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenSt[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession FullBlockClosure(BlockClosure)>>on:do: Receiver: [ aBlock value. false ] Arguments and temporary variables: exception: Halt handlerAction: [ :ex | ex return: true ] Receiver's instance variables: outerContext: SessionErrorHandlingTest(TestAsserter)>>executeShould:inScopeOf: compiledBlock: a CompiledBlock: [ aBlock value. false ] numArgs: 0 receiver: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionS[..] SessionErrorHandlingTest(TestAsserter)>>executeShould:inScopeOf: Receiver: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenS[..] Arguments and temporary variables: aBlock: [ session start: false ] anExceptionalEvent: Halt Receiver's instance variables: testSelector: #testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenSt[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession SessionErrorHandlingTest(TestAsserter)>>shouldnt:raise: Receiver: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenS[..] Arguments and temporary variables: aBlock: [ session start: false ] anExceptionalEvent: Halt Receiver's instance variables: testSelector: #testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenSt[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession [ manager register: (TestSessionHandler onStartup: [ Halt now ]). session errorHandler: (TestStartupUIManager new sessionManager: manager; yourself). self shouldnt: [ session start: false ] raise: Halt. self assert: (session instVarNamed: 'deferredStartupActions') size equals: 1] in SessionErrorHandlingTest>>testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenStartupUiManagerActive Receiver: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenS[..] Arguments and temporary variables: x Receiver's instance variables: testSelector: #testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenSt[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession FullBlockClosure(BlockClosure)>>ensure: Receiver: [ manager register: (TestSessionHandler onStartup: [ Halt now ]). session errorHandl[..] Arguments and temporary variables: aBlock: [ currentManager beDefault ] complete: nil returnValue: nil Receiver's instance variables: outerContext: SessionErrorHandlingTest>>testErrorCaughtAndDefferedIfExcepti[..] compiledBlock: a CompiledBlock: [ manager register: (TestSessionHandler onS[..] numArgs: 0 receiver: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionS[..] UIManager class>>nonInteractiveDuring: Receiver: UIManager Arguments and temporary variables: aBlock: [ manager register: (TestSessionHandler onStartup: [ Halt now ]). [..] currentManager: a NonInteractiveUIManager Receiver's instance variables: superclass: Object methodDict: a MethodDictionary(#abort:->UIManager>>#abort: #abort:title:->U[..] format: 0 layout: a FixedLayout organization: a ClassOrganization commentSourcePointer: nil subclasses: {CommandLineUIManager. DummyUIManager. MorphicUIManager} name: #UIManager classPool: a Dictionary(#Default->a NonInteractiveUIManager ) sharedPools: an OrderedCollection() environment: a SystemDictionary(lots of globals) category: #'UIManager-Base' SessionErrorHandlingTest>>testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenStartupUiManagerActive Receiver: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenS[..] Arguments and temporary variables: x Receiver's instance variables: testSelector: #testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenSt[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession SessionErrorHandlingTest(TestCase)>>performTest Receiver: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenS[..] Arguments and temporary variables: x Receiver's instance variables: testSelector: #testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenSt[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession [ self setUp. self performTest ] in [ [ self setUp. self performTest ] ensure: [ self tearDown ] ] in SessionErrorHandlingTest(TestCase)>>runCase Receiver: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenS[..] Arguments and temporary variables: x Receiver's instance variables: testSelector: #testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenSt[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession FullBlockClosure(BlockClosure)>>ensure: Receiver: [ self setUp. self performTest ] Arguments and temporary variables: aBlock: [ self tearDown ] complete: nil returnValue: nil Receiver's instance variables: outerContext: [ [ self setUp. self performTest ] ensure: [ self tear[..] compiledBlock: a CompiledBlock: [ self setUp. self performTest ] numArgs: 0 receiver: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionS[..] [ [ self setUp. self performTest ] ensure: [ self tearDown ] ] in SessionErrorHandlingTest(TestCase)>>runCase Receiver: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenS[..] Arguments and temporary variables: x Receiver's instance variables: testSelector: #testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenSt[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession FullBlockClosure(BlockClosure)>>ensure: Receiver: [ [ self setUp. self performTest ] ensure: [ self tearDown ] ] Arguments and temporary variables: aBlock: [ self cleanUpInstanceVariables ] complete: nil returnValue: nil Receiver's instance variables: outerContext: SessionErrorHandlingTest(TestCase)>>runCase compiledBlock: a CompiledBlock: [ [ self setUp. self performTest ] e[..] numArgs: 0 receiver: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionS[..] SessionErrorHandlingTest(TestCase)>>runCase Receiver: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenS[..] Arguments and temporary variables: x Receiver's instance variables: testSelector: #testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenSt[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession [aTestCase runCase] in [ [aTestCase runCase] ensure: [ "Terminated test is not considered as completed (user just closed a debugger for example)" mainTestProcess isTerminating ifFalse: [ self handleCompletedTest ]] ] in TestExecutionEnvironment>>runTestCaseUnderWatchdog: Receiver: a TestExecutionEnvironment Arguments and temporary variables: aTestCase: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfException[..] Receiver's instance variables: watchDogProcess: a Process in [self schedule. "It is critical that the fol[..] watchDogSemaphore: a Semaphore(a Process in [self schedule. "It is critica[..] testCase: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionS[..] maxTimeForTest: 0:00:00:10 testCompleted: false services: an OrderedCollection(a ProcessMonitorTestService) mainTestProcess: a Process in nil FullBlockClosure(BlockClosure)>>ensure: Receiver: [aTestCase runCase] Arguments and temporary variables: aBlock: [ "Terminated test is not considered as completed (user just clo[..] complete: nil returnValue: nil Receiver's instance variables: outerContext: [ [aTestCase runCase] ensure: [ "Terminated test is not [..] compiledBlock: a CompiledBlock: [aTestCase runCase] numArgs: 0 receiver: a TestExecutionEnvironment [ [aTestCase runCase] ensure: [ "Terminated test is not considered as completed (user just closed a debugger for example)" mainTestProcess isTerminating ifFalse: [ self handleCompletedTest ]] ] in TestExecutionEnvironment>>runTestCaseUnderWatchdog: Receiver: a TestExecutionEnvironment Arguments and temporary variables: aTestCase: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfException[..] Receiver's instance variables: watchDogProcess: a Process in [self schedule. "It is critical that the fol[..] watchDogSemaphore: a Semaphore(a Process in [self schedule. "It is critica[..] testCase: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionS[..] maxTimeForTest: 0:00:00:10 testCompleted: false services: an OrderedCollection(a ProcessMonitorTestService) mainTestProcess: a Process in nil FullBlockClosure(BlockClosure)>>on:do: Receiver: [ [aTestCase runCase] ensure: [ "Terminated test is not considered as completed ([..] Arguments and temporary variables: exception: Exception handlerAction: [ :err | self handleException: err ] Receiver's instance variables: outerContext: TestExecutionEnvironment>>runTestCaseUnderWatchdog: compiledBlock: a CompiledBlock: [ [aTestCase runCase] ensure: [ "Termi[..] numArgs: 0 receiver: a TestExecutionEnvironment TestExecutionEnvironment>>runTestCaseUnderWatchdog: Receiver: a TestExecutionEnvironment Arguments and temporary variables: aTestCase: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfException[..] Receiver's instance variables: watchDogProcess: a Process in [self schedule. "It is critical that the fol[..] watchDogSemaphore: a Semaphore(a Process in [self schedule. "It is critica[..] testCase: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionS[..] maxTimeForTest: 0:00:00:10 testCompleted: false services: an OrderedCollection(a ProcessMonitorTestService) mainTestProcess: a Process in nil [self runTestCaseUnderWatchdog: aTestCase] in TestExecutionEnvironment>>runTestCase: Receiver: a TestExecutionEnvironment Arguments and temporary variables: aTestCase: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfException[..] Receiver's instance variables: watchDogProcess: a Process in [self schedule. "It is critical that the fol[..] watchDogSemaphore: a Semaphore(a Process in [self schedule. "It is critica[..] testCase: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionS[..] maxTimeForTest: 0:00:00:10 testCompleted: false services: an OrderedCollection(a ProcessMonitorTestService) mainTestProcess: a Process in nil FullBlockClosure(BlockClosure)>>ensure: Receiver: [self runTestCaseUnderWatchdog: aTestCase] Arguments and temporary variables: aBlock: [ testCompleted := true. watchDogSemaphore signal. "signal tha[..] complete: nil returnValue: nil Receiver's instance variables: outerContext: TestExecutionEnvironment>>runTestCase: compiledBlock: a CompiledBlock: [self runTestCaseUnderWatchdog: aTestCase] numArgs: 0 receiver: a TestExecutionEnvironment TestExecutionEnvironment>>runTestCase: Receiver: a TestExecutionEnvironment Arguments and temporary variables: aTestCase: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfException[..] Receiver's instance variables: watchDogProcess: a Process in [self schedule. "It is critical that the fol[..] watchDogSemaphore: a Semaphore(a Process in [self schedule. "It is critica[..] testCase: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionS[..] maxTimeForTest: 0:00:00:10 testCompleted: false services: an OrderedCollection(a ProcessMonitorTestService) mainTestProcess: a Process in nil CurrentExecutionEnvironment class>>runTestCase: Receiver: CurrentExecutionEnvironment Arguments and temporary variables: aTestCase: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfException[..] Receiver's instance variables: superclass: ProcessLocalVariable methodDict: a MethodDictionary(#default->CurrentExecutionEnvironment>>#defa[..] format: 65537 layout: a FixedLayout organization: a ClassOrganization commentSourcePointer: nil subclasses: nil name: #CurrentExecutionEnvironment classPool: nil sharedPools: an OrderedCollection() environment: a SystemDictionary(lots of globals) category: #'Kernel-Processes' soleInstance: a CurrentExecutionEnvironment SessionErrorHandlingTest(TestCase)>>runCaseManaged Receiver: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenS[..] Arguments and temporary variables: x Receiver's instance variables: testSelector: #testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenSt[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession [aTestCase runCaseManaged. aTestCase shouldPass ifTrue: [ self recordPassOf: aTestCase ] ifFalse: [ self recordUnexpectedPassOf: aTestCase ] ] in [ [aTestCase runCaseManaged. aTestCase shouldPass ifTrue: [ self recordPassOf: aTestCase ] ifFalse: [ self recordUnexpectedPassOf: aTestCase ] ] on: Exception do: [ :exc | exc recordResultOf: aTestCase inHDTestReport: self ] ] in HDTestReport>>runCase: Receiver: a HDTestReport Arguments and temporary variables: aTestCase: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfException[..] Receiver's instance variables: suite: a TestSuite stream: a WriteStream suitePosition: 126 suiteTime: 0:00:00:00 suiteFailures: 0 suiteErrors: 0 nodeName: #'MacOSX64.' stageName: 'Tests-Darwin-arm64-CoInterpreter' progressFileName: 'progress.log' progressStream: a ZnCharacterWriteStream shouldSerializeError: true FullBlockClosure(BlockClosure)>>on:do: Receiver: [aTestCase runCaseManaged. aTestCase shouldPass ifTrue: [ self recordPassOf: a[..] Arguments and temporary variables: exception: Exception handlerAction: [ :exc | exc recordResultOf: aTestCase inHDTestReport:[..] Receiver's instance variables: outerContext: [ [aTestCase runCaseManaged. aTestCase shouldPass [..] compiledBlock: a CompiledBlock: [aTestCase runCaseManaged. aTestCase sho[..] numArgs: 0 receiver: a HDTestReport [ [aTestCase runCaseManaged. aTestCase shouldPass ifTrue: [ self recordPassOf: aTestCase ] ifFalse: [ self recordUnexpectedPassOf: aTestCase ] ] on: Exception do: [ :exc | exc recordResultOf: aTestCase inHDTestReport: self ] ] in HDTestReport>>runCase: Receiver: a HDTestReport Arguments and temporary variables: aTestCase: SessionErrorHandlingTest>>#testErrorCaughtAndDefferedIfException[..] Receiver's instance variables: suite: a TestSuite stream: a WriteStream suitePosition: 126 suiteTime: 0:00:00:00 suiteFailures: 0 suiteErrors: 0 nodeName: #'MacOSX64.' stageName: 'Tests-Darwin-arm64-CoInterpreter' progressFileName: 'progress.log' progressStream: a ZnCharacterWriteStream shouldSerializeError: true Time class>>microsecondsToRun: Receiver: Time Arguments and temporary variables: timedBlock: [ [aTestCase runCaseManaged. aTestCase shouldPass i[..] initialMicroseconds: 3869663786491406 Receiver's instance variables: superclass: Magnitude methodDict: a MethodDictionary(#<->Time>>#< #=->Time>>#= #addSeconds:->Time[..] format: 65538 layout: a FixedLayout organization: a ClassOrganization commentSourcePointer: nil subclasses: nil name: #Time classPool: a Dictionary() sharedPools: an OrderedCollection(ChronologyConstants) environment: a SystemDictionary(lots of globals) category: #'Kernel-Chronology' --- The full stack --- [ Halt now ] in [ manager register: (TestSessionHandler onStartup: [ Halt now ]). session errorHandler: (TestStartupUIManager new sessionManager: manager; yourself). self shouldnt: [ session start: false ] raise: Halt. self assert: (session instVarNamed: 'deferredStartupActions') size equals: 1] in SessionErrorHandlingTest>>testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenStartupUiManagerActive TestSessionHandler>>startup: [ :each | each startup: isImageStarting ] in TestWorkingSession(WorkingSession)>>runStartup: [aBlock value: each] in [ :each | [aBlock value: each] on: Exception do: [ :error | self errorHandler handleError: error] ] in TestWorkingSession(WorkingSession)>>runList:do: FullBlockClosure(BlockClosure)>>on:do: [ :each | [aBlock value: each] on: Exception do: [ :error | self errorHandler handleError: error] ] in TestWorkingSession(WorkingSession)>>runList:do: Array(SequenceableCollection)>>do: TestWorkingSession(WorkingSession)>>runList:do: TestWorkingSession(WorkingSession)>>runStartup: TestWorkingSession>>start: [ session start: false ] in [ manager register: (TestSessionHandler onStartup: [ Halt now ]). session errorHandler: (TestStartupUIManager new sessionManager: manager; yourself). self shouldnt: [ session start: false ] raise: Halt. self assert: (session instVarNamed: 'deferredStartupActions') size equals: 1] in SessionErrorHandlingTest>>testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenStartupUiManagerActive [ aBlock value. false ] in SessionErrorHandlingTest(TestAsserter)>>executeShould:inScopeOf: FullBlockClosure(BlockClosure)>>on:do: SessionErrorHandlingTest(TestAsserter)>>executeShould:inScopeOf: SessionErrorHandlingTest(TestAsserter)>>shouldnt:raise: [ manager register: (TestSessionHandler onStartup: [ Halt now ]). session errorHandler: (TestStartupUIManager new sessionManager: manager; yourself). self shouldnt: [ session start: false ] raise: Halt. self assert: (session instVarNamed: 'deferredStartupActions') size equals: 1] in SessionErrorHandlingTest>>testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenStartupUiManagerActive FullBlockClosure(BlockClosure)>>ensure: UIManager class>>nonInteractiveDuring: SessionErrorHandlingTest>>testErrorCaughtAndDefferedIfExceptionSignaledAtStartupWhenStartupUiManagerActive SessionErrorHandlingTest(TestCase)>>performTest [ self setUp. self performTest ] in [ [ self setUp. self performTest ] ensure: [ self tearDown ] ] in SessionErrorHandlingTest(TestCase)>>runCase FullBlockClosure(BlockClosure)>>ensure: [ [ self setUp. self performTest ] ensure: [ self tearDown ] ] in SessionErrorHandlingTest(TestCase)>>runCase FullBlockClosure(BlockClosure)>>ensure: SessionErrorHandlingTest(TestCase)>>runCase [aTestCase runCase] in [ [aTestCase runCase] ensure: [ "Terminated test is not considered as completed (user just closed a debugger for example)" mainTestProcess isTerminating ifFalse: [ self handleCompletedTest ]] ] in TestExecutionEnvironment>>runTestCaseUnderWatchdog: FullBlockClosure(BlockClosure)>>ensure: [ [aTestCase runCase] ensure: [ "Terminated test is not considered as completed (user just closed a debugger for example)" mainTestProcess isTerminating ifFalse: [ self handleCompletedTest ]] ] in TestExecutionEnvironment>>runTestCaseUnderWatchdog: FullBlockClosure(BlockClosure)>>on:do: TestExecutionEnvironment>>runTestCaseUnderWatchdog: [self runTestCaseUnderWatchdog: aTestCase] in TestExecutionEnvironment>>runTestCase: FullBlockClosure(BlockClosure)>>ensure: TestExecutionEnvironment>>runTestCase: CurrentExecutionEnvironment class>>runTestCase: SessionErrorHandlingTest(TestCase)>>runCaseManaged [aTestCase runCaseManaged. aTestCase shouldPass ifTrue: [ self recordPassOf: aTestCase ] ifFalse: [ self recordUnexpectedPassOf: aTestCase ] ] in [ [aTestCase runCaseManaged. aTestCase shouldPass ifTrue: [ self recordPassOf: aTestCase ] ifFalse: [ self recordUnexpectedPassOf: aTestCase ] ] on: Exception do: [ :exc | exc recordResultOf: aTestCase inHDTestReport: self ] ] in HDTestReport>>runCase: FullBlockClosure(BlockClosure)>>on:do: [ [aTestCase runCaseManaged. aTestCase shouldPass ifTrue: [ self recordPassOf: aTestCase ] ifFalse: [ self recordUnexpectedPassOf: aTestCase ] ] on: Exception do: [ :exc | exc recordResultOf: aTestCase inHDTestReport: self ] ] in HDTestReport>>runCase: Time class>>microsecondsToRun: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Time class>>millisecondsToRun: FullBlockClosure(BlockClosure)>>timeToRun [ time := aBlock timeToRun ] in HDTestReport>>reportTestCase:runBlock: FullBlockClosure(BlockClosure)>>ensure: HDTestReport>>newLogDuring: HDTestReport>>reportTestCase:runBlock: HDTestReport>>runCase: SessionErrorHandlingTest(TestCase)>>run: [ :each | each run: self ] in [ suite tests do: [ :each | each run: self ] ] in HDTestReport>>runAll OrderedCollection>>do: [ suite tests do: [ :each | each run: self ] ] in HDTestReport>>runAll [ self value: anExecutionEnvironment. anExecutionEnvironment activated. aBlock value ] in CurrentExecutionEnvironment class>>activate:for: FullBlockClosure(BlockClosure)>>ensure: CurrentExecutionEnvironment class>>activate:for: TestExecutionEnvironment(ExecutionEnvironment)>>beActiveDuring: DefaultExecutionEnvironment>>runTestsBy: CurrentExecutionEnvironment class>>runTestsBy: HDTestReport>>runAll [ self runAll ] in [ self setUp. suiteTime := [ self runAll ] timeToRun ] in [ [ self setUp. suiteTime := [ self runAll ] timeToRun ] ensure: [ self tearDown ] ] in HDTestReport>>run Time class>>microsecondsToRun: Time class>>millisecondsToRun: FullBlockClosure(BlockClosure)>>timeToRun [ self setUp. suiteTime := [ self runAll ] timeToRun ] in [ [ self setUp. suiteTime := [ self runAll ] timeToRun ] ensure: [ self tearDown ] ] in HDTestReport>>run FullBlockClosure(BlockClosure)>>ensure: [ [ self setUp. suiteTime := [ self runAll ] timeToRun ] ensure: [ self tearDown ] ] in HDTestReport>>run FullBlockClosure(BlockClosure)>>ensure: Author>>ifUnknownAuthorUse:during: HDTestReport>>run HDTestReport>>runSuite: HDTestReport class>>runSuite: HDTestReport class>>runClasses:named: HDTestReport class>>runPackage: [ :each | self runPackage: each ] in HDTestReport class(HDReport class)>>runPackages: [:each | each ifNotNil: [newSet add: (aBlock value: each enclosedElement)]] in Set>>collect: Array(SequenceableCollection)>>do: Set>>collect: HDTestReport class(HDReport class)>>runPackages: TestCommandLineHandler>>runPackages TestCommandLineHandler>>activate TestCommandLineHandler class(CommandLineHandler class)>>activateWith: [ aCommandLinehandler activateWith: commandLine ] in PharoCommandLineHandler(BasicCommandLineHandler)>>activateSubCommand: FullBlockClosure(BlockClosure)>>on:do: PharoCommandLineHandler(BasicCommandLineHandler)>>activateSubCommand: PharoCommandLineHandler(BasicCommandLineHandler)>>handleSubcommand PharoCommandLineHandler(BasicCommandLineHandler)>>handleArgument: [ self handleArgument: self firstArgument ] in [ [ self handleArgument: self firstArgument ] on: Exit do: [ :exit | "If the command line is protected by password, we just exit the image because in non-headless mode the handleExit will let the image open. If the password protection is enabled, it is to avoid to let the access to the image." self class commandLinePasswordManager hasPasswordSet ifTrue: [ Smalltalk snapshot: false andQuit: true ]. self handleExit: exit ] ] in PharoCommandLineHandler(BasicCommandLineHandler)>>activate FullBlockClosure(BlockClosure)>>on:do: [ [ self handleArgument: self firstArgument ] on: Exit do: [ :exit | "If the command line is protected by password, we just exit the image because in non-headless mode the handleExit will let the image open. If the password protection is enabled, it is to avoid to let the access to the image." self class commandLinePasswordManager hasPasswordSet ifTrue: [ Smalltalk snapshot: false andQuit: true ]. self handleExit: exit ] ] in PharoCommandLineHandler(BasicCommandLineHandler)>>activate [self value. "IMPORTANT: Do not step over next line of code. See method comments for details" Processor terminateRealActive] in FullBlockClosure(BlockClosure)>>newProcess ------------------------------------------------------------------------------- THERE_BE_DRAGONS_HERE 16 August 2023 8:36:26.554843 pm VM: Mac OS - arm64 - 1000 - CoInterpreter VMMaker-tonel.1 uuid: 9015d8ff-6ebf-0d00-86f2-0f8808bb343c Aug 16 2023 StackToRegisterMappingCogit VMMaker-tonel.1 uuid: 9015d8ff-6ebf-0d00-86f2-0f8808bb343c Aug 16 2023 v10.0.6 - Commit: b67609b9 - Date: 2023-08-16 18:51:13 +0200 Image: Pharo11.0.0 [Build information: Pharo-11.0.0+build.704.sha.7e0219e7f720faf2cfd6083adef507741de47cf2 (64 Bit)] [ ZeroDivide signal ] in SessionErrorHandlingTest>>testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiManagerActive Receiver: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiM[..] Arguments and temporary variables: x Receiver's instance variables: testSelector: #testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiMa[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession TestSessionHandler>>shutdown: Receiver: a TestSessionHandler Arguments and temporary variables: isImageQuitting: false Receiver's instance variables: startupHandler: nil shutdownHandler: [ ZeroDivide signal ] [ :each | each shutdown: isImageQuitting ] in TestWorkingSession(WorkingSession)>>runShutdown: Receiver: a TestWorkingSession Arguments and temporary variables: isImageQuitting: false each: a TestSessionHandler Receiver's instance variables: manager: a SessionManager deferredStartupActions: an OrderedCollection() id: nil creationTime: 2023-08-16T20:36:26.545837+02:00 properties: a Dictionary() errors: an OrderedCollection() errorHandler: a TestStartupUIManager [aBlock value: each] in [ :each | [aBlock value: each] on: Exception do: [ :error | self errorHandler handleError: error] ] in TestWorkingSession(WorkingSession)>>runList:do: Receiver: a TestWorkingSession Arguments and temporary variables: aList: an Array(a TestSessionHandler) aBlock: [ :each | each shutdown: isImageQuitting ] each: a TestSessionHandler Receiver's instance variables: manager: a SessionManager deferredStartupActions: an OrderedCollection() id: nil creationTime: 2023-08-16T20:36:26.545837+02:00 properties: a Dictionary() errors: an OrderedCollection() errorHandler: a TestStartupUIManager FullBlockClosure(BlockClosure)>>on:do: Receiver: [aBlock value: each] Arguments and temporary variables: exception: Exception handlerAction: [ :error | self errorHandler handleError: error] Receiver's instance variables: outerContext: [ :each | [aBlock value: each] on: Exception do: [ :e[..] compiledBlock: a CompiledBlock: [aBlock value: each] numArgs: 0 receiver: a TestWorkingSession [ :each | [aBlock value: each] on: Exception do: [ :error | self errorHandler handleError: error] ] in TestWorkingSession(WorkingSession)>>runList:do: Receiver: a TestWorkingSession Arguments and temporary variables: aList: an Array(a TestSessionHandler) aBlock: [ :each | each shutdown: isImageQuitting ] each: a TestSessionHandler Receiver's instance variables: manager: a SessionManager deferredStartupActions: an OrderedCollection() id: nil creationTime: 2023-08-16T20:36:26.545837+02:00 properties: a Dictionary() errors: an OrderedCollection() errorHandler: a TestStartupUIManager Array(SequenceableCollection)>>do: Receiver: an Array(a TestSessionHandler) Arguments and temporary variables: aBlock: [ :each | [aBlock value: each] on: Exception do: [ :error |[..] index: 1 Receiver's instance variables: an Array(a TestSessionHandler) TestWorkingSession(WorkingSession)>>runList:do: Receiver: a TestWorkingSession Arguments and temporary variables: aList: an Array(a TestSessionHandler) aBlock: [ :each | each shutdown: isImageQuitting ] Receiver's instance variables: manager: a SessionManager deferredStartupActions: an OrderedCollection() id: nil creationTime: 2023-08-16T20:36:26.545837+02:00 properties: a Dictionary() errors: an OrderedCollection() errorHandler: a TestStartupUIManager TestWorkingSession(WorkingSession)>>runShutdown: Receiver: a TestWorkingSession Arguments and temporary variables: isImageQuitting: false Receiver's instance variables: manager: a SessionManager deferredStartupActions: an OrderedCollection() id: nil creationTime: 2023-08-16T20:36:26.545837+02:00 properties: a Dictionary() errors: an OrderedCollection() errorHandler: a TestStartupUIManager TestWorkingSession(WorkingSession)>>stop: Receiver: a TestWorkingSession Arguments and temporary variables: isImageQuitting: false Receiver's instance variables: manager: a SessionManager deferredStartupActions: an OrderedCollection() id: nil creationTime: 2023-08-16T20:36:26.545837+02:00 properties: a Dictionary() errors: an OrderedCollection() errorHandler: a TestStartupUIManager [ session stop: false ] in SessionErrorHandlingTest>>testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiManagerActive Receiver: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiM[..] Arguments and temporary variables: x Receiver's instance variables: testSelector: #testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiMa[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession [ aBlock value. false ] in SessionErrorHandlingTest(TestAsserter)>>executeShould:inScopeOf: Receiver: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiM[..] Arguments and temporary variables: aBlock: [ session stop: false ] anExceptionalEvent: ZeroDivide Receiver's instance variables: testSelector: #testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiMa[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession FullBlockClosure(BlockClosure)>>on:do: Receiver: [ aBlock value. false ] Arguments and temporary variables: exception: ZeroDivide handlerAction: [ :ex | ex return: true ] Receiver's instance variables: outerContext: SessionErrorHandlingTest(TestAsserter)>>executeShould:inScopeOf: compiledBlock: a CompiledBlock: [ aBlock value. false ] numArgs: 0 receiver: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtS[..] SessionErrorHandlingTest(TestAsserter)>>executeShould:inScopeOf: Receiver: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiM[..] Arguments and temporary variables: aBlock: [ session stop: false ] anExceptionalEvent: ZeroDivide Receiver's instance variables: testSelector: #testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiMa[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession SessionErrorHandlingTest(TestAsserter)>>shouldnt:raise: Receiver: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiM[..] Arguments and temporary variables: aBlock: [ session stop: false ] anExceptionalEvent: ZeroDivide Receiver's instance variables: testSelector: #testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiMa[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession SessionErrorHandlingTest>>testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiManagerActive Receiver: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiM[..] Arguments and temporary variables: x Receiver's instance variables: testSelector: #testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiMa[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession SessionErrorHandlingTest(TestCase)>>performTest Receiver: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiM[..] Arguments and temporary variables: x Receiver's instance variables: testSelector: #testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiMa[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession [ self setUp. self performTest ] in [ [ self setUp. self performTest ] ensure: [ self tearDown ] ] in SessionErrorHandlingTest(TestCase)>>runCase Receiver: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiM[..] Arguments and temporary variables: x Receiver's instance variables: testSelector: #testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiMa[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession FullBlockClosure(BlockClosure)>>ensure: Receiver: [ self setUp. self performTest ] Arguments and temporary variables: aBlock: [ self tearDown ] complete: nil returnValue: nil Receiver's instance variables: outerContext: [ [ self setUp. self performTest ] ensure: [ self tear[..] compiledBlock: a CompiledBlock: [ self setUp. self performTest ] numArgs: 0 receiver: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtS[..] [ [ self setUp. self performTest ] ensure: [ self tearDown ] ] in SessionErrorHandlingTest(TestCase)>>runCase Receiver: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiM[..] Arguments and temporary variables: x Receiver's instance variables: testSelector: #testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiMa[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession FullBlockClosure(BlockClosure)>>ensure: Receiver: [ [ self setUp. self performTest ] ensure: [ self tearDown ] ] Arguments and temporary variables: aBlock: [ self cleanUpInstanceVariables ] complete: nil returnValue: nil Receiver's instance variables: outerContext: SessionErrorHandlingTest(TestCase)>>runCase compiledBlock: a CompiledBlock: [ [ self setUp. self performTest ] e[..] numArgs: 0 receiver: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtS[..] SessionErrorHandlingTest(TestCase)>>runCase Receiver: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiM[..] Arguments and temporary variables: x Receiver's instance variables: testSelector: #testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiMa[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession [aTestCase runCase] in [ [aTestCase runCase] ensure: [ "Terminated test is not considered as completed (user just closed a debugger for example)" mainTestProcess isTerminating ifFalse: [ self handleCompletedTest ]] ] in TestExecutionEnvironment>>runTestCaseUnderWatchdog: Receiver: a TestExecutionEnvironment Arguments and temporary variables: aTestCase: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAt[..] Receiver's instance variables: watchDogProcess: a Process in [self schedule. "It is critical that the fol[..] watchDogSemaphore: a Semaphore(a Process in [self schedule. "It is critica[..] testCase: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtS[..] maxTimeForTest: 0:00:00:10 testCompleted: false services: an OrderedCollection(a ProcessMonitorTestService) mainTestProcess: a Process in nil FullBlockClosure(BlockClosure)>>ensure: Receiver: [aTestCase runCase] Arguments and temporary variables: aBlock: [ "Terminated test is not considered as completed (user just clo[..] complete: nil returnValue: nil Receiver's instance variables: outerContext: [ [aTestCase runCase] ensure: [ "Terminated test is not [..] compiledBlock: a CompiledBlock: [aTestCase runCase] numArgs: 0 receiver: a TestExecutionEnvironment [ [aTestCase runCase] ensure: [ "Terminated test is not considered as completed (user just closed a debugger for example)" mainTestProcess isTerminating ifFalse: [ self handleCompletedTest ]] ] in TestExecutionEnvironment>>runTestCaseUnderWatchdog: Receiver: a TestExecutionEnvironment Arguments and temporary variables: aTestCase: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAt[..] Receiver's instance variables: watchDogProcess: a Process in [self schedule. "It is critical that the fol[..] watchDogSemaphore: a Semaphore(a Process in [self schedule. "It is critica[..] testCase: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtS[..] maxTimeForTest: 0:00:00:10 testCompleted: false services: an OrderedCollection(a ProcessMonitorTestService) mainTestProcess: a Process in nil FullBlockClosure(BlockClosure)>>on:do: Receiver: [ [aTestCase runCase] ensure: [ "Terminated test is not considered as completed ([..] Arguments and temporary variables: exception: Exception handlerAction: [ :err | self handleException: err ] Receiver's instance variables: outerContext: TestExecutionEnvironment>>runTestCaseUnderWatchdog: compiledBlock: a CompiledBlock: [ [aTestCase runCase] ensure: [ "Termi[..] numArgs: 0 receiver: a TestExecutionEnvironment TestExecutionEnvironment>>runTestCaseUnderWatchdog: Receiver: a TestExecutionEnvironment Arguments and temporary variables: aTestCase: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAt[..] Receiver's instance variables: watchDogProcess: a Process in [self schedule. "It is critical that the fol[..] watchDogSemaphore: a Semaphore(a Process in [self schedule. "It is critica[..] testCase: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtS[..] maxTimeForTest: 0:00:00:10 testCompleted: false services: an OrderedCollection(a ProcessMonitorTestService) mainTestProcess: a Process in nil [self runTestCaseUnderWatchdog: aTestCase] in TestExecutionEnvironment>>runTestCase: Receiver: a TestExecutionEnvironment Arguments and temporary variables: aTestCase: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAt[..] Receiver's instance variables: watchDogProcess: a Process in [self schedule. "It is critical that the fol[..] watchDogSemaphore: a Semaphore(a Process in [self schedule. "It is critica[..] testCase: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtS[..] maxTimeForTest: 0:00:00:10 testCompleted: false services: an OrderedCollection(a ProcessMonitorTestService) mainTestProcess: a Process in nil FullBlockClosure(BlockClosure)>>ensure: Receiver: [self runTestCaseUnderWatchdog: aTestCase] Arguments and temporary variables: aBlock: [ testCompleted := true. watchDogSemaphore signal. "signal tha[..] complete: nil returnValue: nil Receiver's instance variables: outerContext: TestExecutionEnvironment>>runTestCase: compiledBlock: a CompiledBlock: [self runTestCaseUnderWatchdog: aTestCase] numArgs: 0 receiver: a TestExecutionEnvironment TestExecutionEnvironment>>runTestCase: Receiver: a TestExecutionEnvironment Arguments and temporary variables: aTestCase: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAt[..] Receiver's instance variables: watchDogProcess: a Process in [self schedule. "It is critical that the fol[..] watchDogSemaphore: a Semaphore(a Process in [self schedule. "It is critica[..] testCase: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtS[..] maxTimeForTest: 0:00:00:10 testCompleted: false services: an OrderedCollection(a ProcessMonitorTestService) mainTestProcess: a Process in nil CurrentExecutionEnvironment class>>runTestCase: Receiver: CurrentExecutionEnvironment Arguments and temporary variables: aTestCase: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAt[..] Receiver's instance variables: superclass: ProcessLocalVariable methodDict: a MethodDictionary(#default->CurrentExecutionEnvironment>>#defa[..] format: 65537 layout: a FixedLayout organization: a ClassOrganization commentSourcePointer: nil subclasses: nil name: #CurrentExecutionEnvironment classPool: nil sharedPools: an OrderedCollection() environment: a SystemDictionary(lots of globals) category: #'Kernel-Processes' soleInstance: a CurrentExecutionEnvironment SessionErrorHandlingTest(TestCase)>>runCaseManaged Receiver: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiM[..] Arguments and temporary variables: x Receiver's instance variables: testSelector: #testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiMa[..] expectedFails: nil manager: a SessionManager session: a TestWorkingSession [aTestCase runCaseManaged. aTestCase shouldPass ifTrue: [ self recordPassOf: aTestCase ] ifFalse: [ self recordUnexpectedPassOf: aTestCase ] ] in [ [aTestCase runCaseManaged. aTestCase shouldPass ifTrue: [ self recordPassOf: aTestCase ] ifFalse: [ self recordUnexpectedPassOf: aTestCase ] ] on: Exception do: [ :exc | exc recordResultOf: aTestCase inHDTestReport: self ] ] in HDTestReport>>runCase: Receiver: a HDTestReport Arguments and temporary variables: aTestCase: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAt[..] Receiver's instance variables: suite: a TestSuite stream: a WriteStream suitePosition: 126 suiteTime: 0:00:00:00 suiteFailures: 0 suiteErrors: 0 nodeName: #'MacOSX64.' stageName: 'Tests-Darwin-arm64-CoInterpreter' progressFileName: 'progress.log' progressStream: a ZnCharacterWriteStream shouldSerializeError: true FullBlockClosure(BlockClosure)>>on:do: Receiver: [aTestCase runCaseManaged. aTestCase shouldPass ifTrue: [ self recordPassOf: a[..] Arguments and temporary variables: exception: Exception handlerAction: [ :exc | exc recordResultOf: aTestCase inHDTestReport:[..] Receiver's instance variables: outerContext: [ [aTestCase runCaseManaged. aTestCase shouldPass [..] compiledBlock: a CompiledBlock: [aTestCase runCaseManaged. aTestCase sho[..] numArgs: 0 receiver: a HDTestReport [ [aTestCase runCaseManaged. aTestCase shouldPass ifTrue: [ self recordPassOf: aTestCase ] ifFalse: [ self recordUnexpectedPassOf: aTestCase ] ] on: Exception do: [ :exc | exc recordResultOf: aTestCase inHDTestReport: self ] ] in HDTestReport>>runCase: Receiver: a HDTestReport Arguments and temporary variables: aTestCase: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAt[..] Receiver's instance variables: suite: a TestSuite stream: a WriteStream suitePosition: 126 suiteTime: 0:00:00:00 suiteFailures: 0 suiteErrors: 0 nodeName: #'MacOSX64.' stageName: 'Tests-Darwin-arm64-CoInterpreter' progressFileName: 'progress.log' progressStream: a ZnCharacterWriteStream shouldSerializeError: true Time class>>microsecondsToRun: Receiver: Time Arguments and temporary variables: timedBlock: [ [aTestCase runCaseManaged. aTestCase shouldPass i[..] initialMicroseconds: 3869663786545822 Receiver's instance variables: superclass: Magnitude methodDict: a MethodDictionary(#<->Time>>#< #=->Time>>#= #addSeconds:->Time[..] format: 65538 layout: a FixedLayout organization: a ClassOrganization commentSourcePointer: nil subclasses: nil name: #Time classPool: a Dictionary() sharedPools: an OrderedCollection(ChronologyConstants) environment: a SystemDictionary(lots of globals) category: #'Kernel-Chronology' Time class>>millisecondsToRun: Receiver: Time Arguments and temporary variables: timedBlock: [ [aTestCase runCaseManaged. aTestCase shouldPass i[..] Receiver's instance variables: superclass: Magnitude methodDict: a MethodDictionary(#<->Time>>#< #=->Time>>#= #addSeconds:->Time[..] format: 65538 layout: a FixedLayout organization: a ClassOrganization commentSourcePointer: nil subclasses: nil name: #Time classPool: a Dictionary() sharedPools: an OrderedCollection(ChronologyConstants) environment: a SystemDictionary(lots of globals) category: #'Kernel-Chronology' FullBlockClosure(BlockClosure)>>timeToRun Receiver: [ [aTestCase runCaseManaged. aTestCase shouldPass ifTrue: [ self recordPas[..] Arguments and temporary variables: x Receiver's instance variables: outerContext: HDTestReport>>runCase: compiledBlock: a CompiledBlock: [ [aTestCase runCaseManaged. aTestCa[..] numArgs: 0 receiver: a HDTestReport [ time := aBlock timeToRun ] in HDTestReport>>reportTestCase:runBlock: Receiver: a HDTestReport Arguments and temporary variables: aTestCase: SessionErrorHandlingTest>>#testErrorHandledIfExceptionSignaledAt[..] aBlock: [ [aTestCase runCaseManaged. aTestCase shouldPass ifTru[..] testLog: nil time: nil Receiver's instance variables: suite: a TestSuite stream: a WriteStream suitePosition: 126 suiteTime: 0:00:00:00 suiteFailures: 0 suiteErrors: 0 nodeName: #'MacOSX64.' stageName: 'Tests-Darwin-arm64-CoInterpreter' progressFileName: 'progress.log' progressStream: a ZnCharacterWriteStream shouldSerializeError: true --- The full stack --- [ ZeroDivide signal ] in SessionErrorHandlingTest>>testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiManagerActive TestSessionHandler>>shutdown: [ :each | each shutdown: isImageQuitting ] in TestWorkingSession(WorkingSession)>>runShutdown: [aBlock value: each] in [ :each | [aBlock value: each] on: Exception do: [ :error | self errorHandler handleError: error] ] in TestWorkingSession(WorkingSession)>>runList:do: FullBlockClosure(BlockClosure)>>on:do: [ :each | [aBlock value: each] on: Exception do: [ :error | self errorHandler handleError: error] ] in TestWorkingSession(WorkingSession)>>runList:do: Array(SequenceableCollection)>>do: TestWorkingSession(WorkingSession)>>runList:do: TestWorkingSession(WorkingSession)>>runShutdown: TestWorkingSession(WorkingSession)>>stop: [ session stop: false ] in SessionErrorHandlingTest>>testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiManagerActive [ aBlock value. false ] in SessionErrorHandlingTest(TestAsserter)>>executeShould:inScopeOf: FullBlockClosure(BlockClosure)>>on:do: SessionErrorHandlingTest(TestAsserter)>>executeShould:inScopeOf: SessionErrorHandlingTest(TestAsserter)>>shouldnt:raise: SessionErrorHandlingTest>>testErrorHandledIfExceptionSignaledAtShutdownWhenStartupUiManagerActive SessionErrorHandlingTest(TestCase)>>performTest [ self setUp. self performTest ] in [ [ self setUp. self performTest ] ensure: [ self tearDown ] ] in SessionErrorHandlingTest(TestCase)>>runCase FullBlockClosure(BlockClosure)>>ensure: [ [ self setUp. self performTest ] ensure: [ self tearDown ] ] in SessionErrorHandlingTest(TestCase)>>runCase FullBlockClosure(BlockClosure)>>ensure: SessionErrorHandlingTest(TestCase)>>runCase [aTestCase runCase] in [ [aTestCase runCase] ensure: [ "Terminated test is not considered as completed (user just closed a debugger for example)" mainTestProcess isTerminating ifFalse: [ self handleCompletedTest ]] ] in TestExecutionEnvironment>>runTestCaseUnderWatchdog: FullBlockClosure(BlockClosure)>>ensure: [ [aTestCase runCase] ensure: [ "Terminated test is not considered as completed (user just closed a debugger for example)" mainTestProcess isTerminating ifFalse: [ self handleCompletedTest ]] ] in TestExecutionEnvironment>>runTestCaseUnderWatchdog: FullBlockClosure(BlockClosure)>>on:do: TestExecutionEnvironment>>runTestCaseUnderWatchdog: [self runTestCaseUnderWatchdog: aTestCase] in TestExecutionEnvironment>>runTestCase: FullBlockClosure(BlockClosure)>>ensure: TestExecutionEnvironment>>runTestCase: CurrentExecutionEnvironment class>>runTestCase: SessionErrorHandlingTest(TestCase)>>runCaseManaged [aTestCase runCaseManaged. aTestCase shouldPass ifTrue: [ self recordPassOf: aTestCase ] ifFalse: [ self recordUnexpectedPassOf: aTestCase ] ] in [ [aTestCase runCaseManaged. aTestCase shouldPass ifTrue: [ self recordPassOf: aTestCase ] ifFalse: [ self recordUnexpectedPassOf: aTestCase ] ] on: Exception do: [ :exc | exc recordResultOf: aTestCase inHDTestReport: self ] ] in HDTestReport>>runCase: FullBlockClosure(BlockClosure)>>on:do: [ [aTestCase runCaseManaged. aTestCase shouldPass ifTrue: [ self recordPassOf: aTestCase ] ifFalse: [ self recordUnexpectedPassOf: aTestCase ] ] on: Exception do: [ :exc | exc recordResultOf: aTestCase inHDTestReport: self ] ] in HDTestReport>>runCase: Time class>>microsecondsToRun: Time class>>millisecondsToRun: FullBlockClosure(BlockClosure)>>timeToRun [ time := aBlock timeToRun ] in HDTestReport>>reportTestCase:runBlock: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - FullBlockClosure(BlockClosure)>>ensure: HDTestReport>>newLogDuring: HDTestReport>>reportTestCase:runBlock: HDTestReport>>runCase: SessionErrorHandlingTest(TestCase)>>run: [ :each | each run: self ] in [ suite tests do: [ :each | each run: self ] ] in HDTestReport>>runAll OrderedCollection>>do: [ suite tests do: [ :each | each run: self ] ] in HDTestReport>>runAll [ self value: anExecutionEnvironment. anExecutionEnvironment activated. aBlock value ] in CurrentExecutionEnvironment class>>activate:for: FullBlockClosure(BlockClosure)>>ensure: CurrentExecutionEnvironment class>>activate:for: TestExecutionEnvironment(ExecutionEnvironment)>>beActiveDuring: DefaultExecutionEnvironment>>runTestsBy: CurrentExecutionEnvironment class>>runTestsBy: HDTestReport>>runAll [ self runAll ] in [ self setUp. suiteTime := [ self runAll ] timeToRun ] in [ [ self setUp. suiteTime := [ self runAll ] timeToRun ] ensure: [ self tearDown ] ] in HDTestReport>>run Time class>>microsecondsToRun: Time class>>millisecondsToRun: FullBlockClosure(BlockClosure)>>timeToRun [ self setUp. suiteTime := [ self runAll ] timeToRun ] in [ [ self setUp. suiteTime := [ self runAll ] timeToRun ] ensure: [ self tearDown ] ] in HDTestReport>>run FullBlockClosure(BlockClosure)>>ensure: [ [ self setUp. suiteTime := [ self runAll ] timeToRun ] ensure: [ self tearDown ] ] in HDTestReport>>run FullBlockClosure(BlockClosure)>>ensure: Author>>ifUnknownAuthorUse:during: HDTestReport>>run HDTestReport>>runSuite: HDTestReport class>>runSuite: HDTestReport class>>runClasses:named: HDTestReport class>>runPackage: [ :each | self runPackage: each ] in HDTestReport class(HDReport class)>>runPackages: [:each | each ifNotNil: [newSet add: (aBlock value: each enclosedElement)]] in Set>>collect: Array(SequenceableCollection)>>do: Set>>collect: HDTestReport class(HDReport class)>>runPackages: TestCommandLineHandler>>runPackages TestCommandLineHandler>>activate TestCommandLineHandler class(CommandLineHandler class)>>activateWith: [ aCommandLinehandler activateWith: commandLine ] in PharoCommandLineHandler(BasicCommandLineHandler)>>activateSubCommand: FullBlockClosure(BlockClosure)>>on:do: PharoCommandLineHandler(BasicCommandLineHandler)>>activateSubCommand: PharoCommandLineHandler(BasicCommandLineHandler)>>handleSubcommand PharoCommandLineHandler(BasicCommandLineHandler)>>handleArgument: [ self handleArgument: self firstArgument ] in [ [ self handleArgument: self firstArgument ] on: Exit do: [ :exit | "If the command line is protected by password, we just exit the image because in non-headless mode the handleExit will let the image open. If the password protection is enabled, it is to avoid to let the access to the image." self class commandLinePasswordManager hasPasswordSet ifTrue: [ Smalltalk snapshot: false andQuit: true ]. self handleExit: exit ] ] in PharoCommandLineHandler(BasicCommandLineHandler)>>activate FullBlockClosure(BlockClosure)>>on:do: [ [ self handleArgument: self firstArgument ] on: Exit do: [ :exit | "If the command line is protected by password, we just exit the image because in non-headless mode the handleExit will let the image open. If the password protection is enabled, it is to avoid to let the access to the image." self class commandLinePasswordManager hasPasswordSet ifTrue: [ Smalltalk snapshot: false andQuit: true ]. self handleExit: exit ] ] in PharoCommandLineHandler(BasicCommandLineHandler)>>activate [self value. "IMPORTANT: Do not step over next line of code. See method comments for details" Processor terminateRealActive] in FullBlockClosure(BlockClosure)>>newProcess ------------------------------------------------------------------------------- =============================================================================== Notice: There are references to, #ClassForTestToBeDeleted128Renamed from Undeclared. Check them after this change. =============================================================================== =============================================================================== Notice: There are references to, #ClassForTestToBeDeleted134 from Undeclared. Check them after this change. =============================================================================== =============================================================================== Notice: There are references to, #ClassForTestToBeDeleted136 from Undeclared. Check them after this change. =============================================================================== =============================================================================== Notice: There are references to, #ClassForTestToBeDeleted138 from Undeclared. Check them after this change. =============================================================================== =============================================================================== Notice: There are references to, #ClassForTestToBeDeleted140 from Undeclared. Check them after this change. =============================================================================== =============================================================================== Notice: 1 occurrences were found and changed. =============================================================================== =============================================================================== Notice: 7 occurrences were found and changed. =============================================================================== =============================================================================== Notice: 2 occurrences were found and changed. =============================================================================== =============================================================================== Notice: 6 occurrences were found and changed. =============================================================================== =============================================================================== Notice: 8 occurrences were found and changed. =============================================================================== =============================================================================== Notice: 1 occurrences were found and changed. =============================================================================== =============================================================================== Notice: 3 occurrences were found and changed. ===============================================================================