this is cool :)

> Hi,
> 
> Now that the continuous integration build is using the cool ZeroConf 
> infrastructure, we needed a clean way to run all tests from Moose based on 
> the information gathered from the ConfigurationOfMoose. More precisely we 
> want to run all the tests from all packages that are in the 'Tests' group 
> from all configurations referred from ConfigurationOfMoose (including itself) 
> :).
> 
> It's sounds more complicated than it actually is:
> packages
>       | packages |
>       packages := Set new.
>       (self mooseDevelopmentVersion packagesForSpecNamed: 'Tests') do: [ 
> :spec | packages add: spec name ].
>       self mooseDevelopmentVersion projects do: [ :each | 
>               (each version packagesForSpecNamed: 'Tests') do: [ :spec | 
> packages add: spec name ] ].
>       ^ packages
> 
> We used to have this logic in an .st file that was ran through the builder 
> from Lukas.
> 
> But, now, I simply created the MooseTestRunnerCommandLineHandler as a 
> subclass of TestRunnerCommandLineHandler, and provided the new packages. I 
> gave it the commandName of 'moosetest' and now I can simply call from the 
> command line:
> 
> Pharo ./Moose-latest-dev-4.8.image moosetest
> 
> In Moose, we have a little package named: Moose-Development-Tools that is 
> loaded by the configuration. I added the new class to it, and I can easily 
> integrate the whole test running in the ci job after loading the 
> configuration.
> 
> I'd say it's pretty neat.
> 
> Cheers,
> Doru
> 
> p.s. The VM still crashes when running the tests though (at least on Mac)
> 
> --
> www.tudorgirba.com
> 
> "Beauty is where we see it."
> 
> 
> 
> 


Reply via email to