I've forked the repo at [1] from [2], did the usual changes to remove the Eclipse warnings, plus replaced hamcrest-1.2 by hamcrest-1.3 and then executed mvn -e -X clean test, and couldn't see any errors. Then I tried running TriggerBuilderTest with JUnit plug-in in Eclipse, and again all tests passed.
My settings: Debian 6 3.2 64bits, Java 1.6, Eclipse Juno, Maven 3.0.4.
Just my 0.02 cents. Maybe I've missed something from your problem, but I believe someone else here with more knowledge of parameterized-trigger-plugin or Jenkins codebase will be able to help you more :-)
Cheers,
[1] https://github.com/kinow/parameterized-trigger-plugin.git
[2] https://github.com/cjo9900/parameterized-trigger-plugin.git
Bruno P. Kinoshita
http://kinoshita.eti.br
http://tupilabs.com
>________________________________
> From: cjo <cjo.j...@gmail.com>
>To: jenkin...@googlegroups.com
>Sent: Thursday, 19 July 2012 9:46 AM
>Subject: Test cases failing with multiple levels of builds
I've sent a pull request [1] with a change the seems to fix this issue. Below is the pull request message. Cheers.
>>>
JENKINS-14278: added code to make sure that the number of executors is updated
For tracking what was causing this issue, I put a breakpoint before the first
Future<?>#get() method call, as the execution was dying there. Then I called
the HudsonTestCase#getURL() method, to get the Jenkins URL (it's very convenient).
This way I could see the jobs configuration, it was very useful since I don't
know very well the objects created by parameterized-trigger-plugin. Then I
noticed there were only two executors.
Following the debug stack, I found later that project1 was waiting for another
project (I think it was projectZ4 maybe? sorry, I closed the debugger already) and
that this latter project was waiting for another project that was never executed.
Going back to Jenkins main page, there were only two executors, even after
Hudson#setNumExecutors(10) was called. Then I had a quick look at Jenkins#doSubmitConfig(...)
method, and realized that after updating the number of executors, you had to
update the nodes/computers configuration as well.
Then, as I'm a lazy bastard, I went to my search engine and searched for
Jenkins setnumexecutors and found some code with the following code snippet:
hudson.setNodes(hudson.getNodes());
I think the method that needs to be called after setNumExecutors is updateComputerList,
that is package protected, but is called from this setNodes method.
And then all the tests passed :)
Other files were changed to remove warnings in Eclipse, to use hamcrest-1.3 as
maven couldn't find hamcrest-1.2 or for compliance with Java 1.5 (@override
annotations). These changes are not required to fix this issue.
Hope that helps.
Bruno
<<<
[1] https://github.com/cjo9900/parameterized-trigger-plugin/pull/1
Bruno P. Kinoshita
http://kinoshita.eti.br
http://tupilabs.com
>________________________________
> From: cjo <cjo.j...@gmail.com>
>To: jenkin...@googlegroups.com
>Cc: Bruno P. Kinoshita <brunod...@yahoo.com.br>
>Sent: Friday, 20 July 2012 5:49 AM
>Subject: Re: Test cases failing with multiple levels of builds
>>>Before the fix the test case failed with the java.lang. IllegalArgumentException as per the error report,
From: Bruno P. Kinoshita <brunod...@yahoo.com.br>
To: cjo <cjo.j...@gmail.com>; "jenkin...@googlegroups.com" <jenkin...@googlegroups.com>
Sent: Friday, 20 July 2012 1:49 PM
From: Christopher Johnson <cjo.j...@gmail.com>
To: Bruno P. Kinoshita <brunod...@yahoo.com.br>
Cc: "jenkin...@googlegroups.com" <jenkin...@googlegroups.com>
Sent: Friday, 20 July 2012 3:56 PM