package hudson.plugins.javancss; import hudson.model.FreeStyleProject; import hudson.model.Hudson; import hudson.model.FreeStyleBuild; import hudson.model.Label; import hudson.slaves.DumbSlave; import hudson.tasks.Shell; import hudson.tasks.BatchFile; import hudson.model.Result; import java.util.List; import java.util.ArrayList; import org.jvnet.hudson.test.HudsonTestCase; import org.jvnet.hudson.test.SingleFileSCM; public class JavaNCSSPublisherTest extends HudsonTestCase { /** * Verify that it works on a master. */ public void testOnMaster() throws Exception { FreeStyleProject project = createFreeStyleProject(); List<SingleFileSCM> files = new ArrayList<SingleFileSCM>(2); files.add(new SingleFileSCM("javancss-reports/first-report/first-report-javancss.xml", getClass().getResource("javancss-reports/first-report/first-report-javancss.xml"))); files.add(new SingleFileSCM("javancss-reports/second-report/second-report-javancss.xml", getClass().getResource("javancss-reports/second-report/second-report-javancss.xml"))); project.setScm(new MultiFileSCM(files)); project.getPublishersList().add(new JavaNCSSPublisher("**/*-javancss.xml", null)); FreeStyleBuild build1 = project.scheduleBuild2(0).get(); FreeStyleBuild build2 = project.scheduleBuild2(0).get(); System.out.println(build2.getLog()); assertBuildStatusSuccess(build2); } /** * Verify that it works on a slave. */ public void testOnSlave() throws Exception { FreeStyleProject project = createFreeStyleProject(); DumbSlave slave = createSlave(new Label("javancss-test-slave")); project.setAssignedLabel(slave.getSelfLabel()); List<SingleFileSCM> files = new ArrayList<SingleFileSCM>(2); files.add(new SingleFileSCM("javancss-reports/first-report/first-report-javancss.xml", getClass().getResource("javancss-reports/first-report/first-report-javancss.xml"))); files.add(new SingleFileSCM("javancss-reports/second-report/second-report-javancss.xml", getClass().getResource("javancss-reports/second-report/second-report-javancss.xml"))); project.setScm(new MultiFileSCM(files)); project.getPublishersList().add(new JavaNCSSPublisher("**/*-javancss.xml", null)); FreeStyleBuild build1 = project.scheduleBuild2(0).get(); FreeStyleBuild build2 = project.scheduleBuild2(0).get(); System.out.println(build2.getLog()); assertBuildStatusSuccess(build2); } }