On Sun, Jun 27, 2010 at 5:39 PM, Lukas Renggli <reng...@gmail.com> wrote:
> > One way of doing this seems to use > > MethodContext>>runSimulated:contextAtEachStep:. I've found this looking > at > > MessageTally. Is it the best solution ? > > So in Autotest>>findRunAndShowTestsOf: I try something like this > > Autotest>>findRunAndShowTestsOf:changedMethod > > | testMethods aTestResult methodHit | > > "Finds the test related to changedMethod, run them and tell the view to > > update" > > testMethods := search methodsFor: changedMethod. > > methodHit := false. > > thisContext sender > > runSimulated: [aTestResult := runner run: testMethods] > > contextAtEachStep: [:current| > > (current method = changedMethod) "<--- here I detect if changedMethod > has > > been hit" > > ifTrue: [methodHit := true]]. > > ..... > > but using this debugger opens with "SimulationGuardException: triggered > by > > BlockClosure>>newProcess" in > > MethodContext>>doPrimitive:method:receiver:args: > > As I don't (yet :) understand all this stuff, I want to know if it's the > > right way to do it and what should I check. > > This is the stepping mechanism of the debugger. It is dead slow, and > likely to break when you fork processes, mess with the stack, or hit > other kinds of primitives. > > I would use method wrappers, they are much easier to use, less error > prone, very efficient, and already integrated with the test runner > (see the in the GUI code: 'test coverage'). > Thank you Lukas ! I will have a look. Laurent > > Lukas > > -- > Lukas Renggli > www.lukas-renggli.ch > > _______________________________________________ > Pharo-project mailing list > Pharo-project@lists.gforge.inria.fr > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project