Yes, but this depends what is the expected behavior of the browser. I like the Agile approach that says you're done when all the tests are green :-)
Alexandre On 30 Apr 2011, at 10:02, Mariano Martinez Peck wrote: > Yes, but I have no idea. Another thing is that now HelpBrowser should > implement something like: > > HelpBrowser >> cleanUp > self resetChache > > >> resetCache > helpTopicCache := nil > > So that the class is automatically cleaned in #cleanUpForRelease and > friends... right now since Smalltalk cleanUp sends to all classes which > understand such method, just implemented that should be enough. > > Cheers > > Mariano > > > On Sat, Apr 30, 2011 at 4:58 PM, Alexandre Bergel <[email protected]> > wrote: > You're right Mariano. However, I do not know if the help browser gets updated > if you have a browser opened and add a new help in the system. In any case, > this is a requirement that is not formalized by the unit tests. > > I think that ideally, the reset cache should be done when receiving an event > of a class creation that is a help. > > Alexandre > > > On 30 Apr 2011, at 09:29, Mariano Martinez Peck wrote: > > > Cool! Thanks Alexandre. Now...the problem with the cache is always the > > same...when to invalidate them. > > In this case, when do I need to set helpTopicCache to nil. I guess that if > > you create a help, then it is "automatically" detected when you open the > > browser. > > Now, you have to explicitly flush the cache, haven't you? So...is there > > some documentation of HelpSystem that should be updated to reflect that ? > > > > Thanks > > > > On Sat, Apr 30, 2011 at 3:15 AM, Alexandre Bergel <[email protected]> > > wrote: > > > MessageTally time: [HelpBrowser open] between 2 seconds in Cog and with > > > a regular VM between 6 and 8.... > > > is there an easy way to improve it ? > > > > > > Alexandre, do you want another place where to put a cache like > > > Metacello's currentVersion? ;) > > > > :-) > > Sure. Easy. > > > > SystemHelp>>allSystemHelpPragmas takes time. When you open a browser, the > > method HelpBrowser>>open is called once and > > SystemHelp>>allSystemHelpPragmas twice. Easy to suspect that a cache is > > missing. > > > > So, if you define > > -=-=-=-=-=-=-=-=-= > > HelpBrowser>>helpTopic > > ^ helpTopicCache ifNil: [ helpTopicCache := rootTopic asHelpTopic ] > > -=-=-=-=-=-=-=-=-= > > > > and adapt HelpBrowser>>refresh you win 50% of execution time. > > > > Here is it: > > > > > > http://code.google.com/p/pharo/issues/detail?id=4126 > > > > Before this fix, I have: > > [HelpBrowser open] timeToRun > > => 6099 > > > > After the fix I have: > > [HelpBrowser open] timeToRun > > => 3094 > > > > Naturally, tests are kept green. > > > > Cheers, > > Alexandre > > > > -- > > _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: > > Alexandre Bergel http://www.bergel.eu > > ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. > > > > > > > > > > > > > > > > > > > > -- > > Mariano > > http://marianopeck.wordpress.com > > > > -- > _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: > Alexandre Bergel http://www.bergel.eu > ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. > > > > > > > > > > -- > Mariano > http://marianopeck.wordpress.com > -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
