On 11/09/2011, at 6:09 PM, [email protected] wrote:

>  Branch: refs/heads/master
>  Home:   https://github.com/gradle/gradle
> 
>  Commit: 05308efa20db9712f2def074e9e2cb3577dbb86b
>      
> https://github.com/gradle/gradle/commit/05308efa20db9712f2def074e9e2cb3577dbb86b
>  Author: Szczepan Faber <[email protected]>
>  Date:   2011-09-11 (Sun, 11 Sep 2011)
> 
>  Changed paths:
>    M 
> subprojects/integ-test/src/integTest/groovy/org/gradle/integtests/daemon/DaemonFunctionalTest.groovy

I think this should become a real integration test. If you look at the method 
names, they reflect features we want Gradle to have regardless of which 
interface you use: daemons expire, stops all daemon, starts a new daemon if 
daemon is busy, etc. This is stuff we want coverage for, so it would be nice if 
we can reuse this test in different contexts.

We should introduce a daemon integ test fixture, with 2 implementations: an 
'embedded' mode, which bolts directly onto DaemonClient and DaemonRegistry, and 
a 'forking' mode, which runs real builds to start the daemon, and uses 'gradle 
--stop' to stop the daemons. It would need to use the DaemonRegistry for now, 
to probe the status of the daemons. But this is something we want to add to the 
command-line, at some point, eg http://issues.gradle.org/browse/GRADLE-1462.

We should also get rid of the Sleep command, and just run a build that sleeps 
for the appropriate amount of time. Plus find a way of synchronising between 
the test and the test build that doesn't involve hard-coded sleeps, perhaps 
using a marker file.


--
Adam Murdoch
Gradle Co-founder
http://www.gradle.org
VP of Engineering, Gradleware Inc. - Gradle Training, Support, Consulting
http://www.gradleware.com

Reply via email to