UI-less kdevplatform

Manuel Breugelmans mbr.nxi at gmail.com
Thu Aug 7 08:18:43 UTC 2008


On Thursday 07 August 2008 08:44:38 Andreas Pakulat wrote:
> On 06.08.08 23:20:53, Manuel Breugelmans wrote:
> > On Wednesday 06 August 2008 22:29:54 Andreas Pakulat wrote:
> > > On 06.08.08 21:27:32, David Nolden wrote:
> > > > Just as one more motivation: With the ability to have a full kdevelop
> > > > just without UI, we could write much better tests, especially for C++
> > > > support. The whole parts that depend on the editor,
> > > > document-controller, background-parser, etc. are currently completely
> > > > untested, which is a problem.
> > >
> > > And why is that not possible with a gui? We already provide a basic
> > > dummy shell for tests under tests/common.
> >
> > For unit tests, performance is vital. If they are too slow they will not
> > get run after every edit/compile and be less effective. Instantiating a
> > full shell for every case simply does not scale (be it ui-less or not)
>
> Well, some things just need a shell.  And I wasn't saying that you need
> to have a full shell for each unit-test in kdevelop. There are already
> quite some unit-tests that don't have a shell.
>
> Andreas
>
> > You can have speedy tests by implementing fakes of the interfaces instead
> > of constructing the real thing. This should make them more robust as well
> > anyway.
>
> Then provide a fake-shell for those tests, but don't force this as
> public API onto the public library.
>

Indeed, that's one of the advantages of this approach. No testers-only code in 
production. Have a look at 
kdevplatform/plugins/coverage/tests/{corestub.h,annotationmanagertest.cpp}


Manuel




More information about the KDevelop-devel mailing list