Hi, I'm developing a web application using (amongst others) WebSockets. To prevent test methods from becoming too big and slow I created a TestCase with a TestResource containing my web application instance. After the first test method is run, the WebSocket is closed unexpectedly and automagically. It turns out that all forked processes are terminated when a TestCase has executed a test method. What would be the proper way to prevent these forked processes from terminating after a single test method? Or am I missing something/doing something wrong?
TestExecutionEnvironment>>#checkForkedProcesses is responsible for terminating any (non failed) processes. It is executed after TestExecutionEnvironment>>#runTestCaseSafelly: [sic: this should be #runTestCaseSafely:]. A possible solution might be to check whether the Context in which a forked process was created has the #setUp method of a TestResource of the TestCase (you still with me ;-) in its Context chain. If that is the case, the process is probably forked for a reason. This forked process does have to be terminated when all TestCases have finished of course (when the TestResource does #tearDown). IFF the forked processes should be kept alive during the execution of all TestCase methods, does the suggested solution above seem logical or are there any (better) alternatives? Regards, Erik -- Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html