[Ktechlab-devel] test-cases using KDevelop::Core

Julian Bäume julian at svg4all.de
Fri Apr 2 00:13:51 UTC 2010


hi,
as promised in irc, I tried to implement some test-cases using KDevPlatform. 
After fiddling around, hacking around and reverting most of my hacks, I got 
something working, now. This looks like how I expect a test-case to look like. 
This morning, I'm sure, I had something like that, but it somehow didn't work. 
After implementing a fake ProjectController and a fake Project it still didn't 
work, because some place in the KDevPlatform code still used some variables, I 
couldn't overwrite in my fake implementations. This was, where I gave up and 
removed all my fake implementations. Just for fun, I ran the test again... and 
this time it didn't crash -___-

The other day, we talked about loading plugins from the TestCore. It seams to 
work for me, now. The KTLProject plugin is somewhat special, because it isn't 
"loaded" (and so it doesn't show up in KDevelop::Core::self()-
>pluginController()->loadedPlugins()). This is, because it is a "project" 
plugin and not a "global" one. KTechLab::Circuit, however, does show up in 
this list. For me it works, when I have KDevPlatform installed from my 
distributions packages and have KTechLab installed into my personal prefix. (I 
had to run kbuildsycoca4, of course.) I tested using KDevPlatform 0.9.99 and 
KDE SC 4.4.2. From #kdevelop I learned, that konsolepart has a bug in KDE < 
4.4.0 and it will crash the TestCore, during initialization with GUI setup 
flags.

So all in all, this seems still somewhat fragile and it seems to work best, 
with later versions of KDevPlatform. But I think, this situation will get more 
mature as soon as the first stable version of KDevPlatform is released. Since 
we are talking about automatic tests here, IMHO we can be a bit more strict 
about the used libraries. At least for now. I don't want to spend much time 
working around bugs in older versions, just to make test-cases run 
everywhere...

You can find the code in the kde4-ktlproject branch. I will complete these 
test-cases, soon. Now, as it works, this should be an easy task ;) and after 
that, implement all missing functionality for project management.

bye then
julian




More information about the Ktechlab-devel mailing list