private static Project testBuildAll(String dependsOn, int count) throws Exception { Workspace ws = new Workspace(new File("test/ws")); Project all = ws.getProject("build-all"); all.setProperty("-dependson", dependsOn); all.prepare(); Collection<Project> dependson = all.getDependson(); assertEquals(count, dependson.size()); return all; }
/** Duplicates in runbundles gave a bad error, should be ignored */ public static void testRunbundleDuplicates() throws Exception { Workspace ws = new Workspace(new File("test/ws")); Project top = ws.getProject("p1"); top.clear(); top.setProperty("-runbundles", "org.apache.felix.configadmin,org.apache.felix.configadmin"); Collection<Container> runbundles = top.getRunbundles(); assertTrue(top.check("Multiple bundles with the same final URL")); assertNotNull(runbundles); assertEquals(1, runbundles.size()); }
/** Test 2 equal bsns but diff. versions */ public static void testSameBsnRunBundles() throws Exception { Workspace ws = new Workspace(new File("test/ws")); Project top = ws.getProject("p1"); top.setProperty( "-runbundles", "org.apache.felix.configadmin;version='[1.0.1,1.0.1]',org.apache.felix.configadmin;version='[1.1.0,1.1.0]'"); Collection<Container> runbundles = top.getRunbundles(); assertTrue(top.check()); assertNotNull(runbundles); assertEquals(2, runbundles.size()); }
/** Test bnd.bnd of project `foo`: `-runbundles: foo;version=latest` */ public static void testRunBundlesContainsSelf() throws Exception { Workspace ws = new Workspace(new File("test/ws")); Project top = ws.getProject("p1"); top.setProperty("-runbundles", "p1;version=latest"); top.setChanged(); top.isStale(); Collection<Container> runbundles = top.getRunbundles(); assertTrue(top.check("Circular dependency")); assertNotNull(runbundles); assertEquals(0, runbundles.size()); }
/** * Creates draft copilot posting for the newly created project. * * @param directProject the direct project. * @return the created competition * @throws Exception if error happens when creating the contest. * @since 1.1 */ private SoftwareCompetition createCopilotDraftPosting(ProjectData directProject) throws Exception { SoftwareCompetition cp = new SoftwareCompetition(); cp.setAssetDTO(getAssetDTOForNewSoftware()); String name = getAssetDTO().getName(); if (name == null || name.equals("")) { name = directProject.getName(); } cp.getAssetDTO().setName(name); GregorianCalendar c = new GregorianCalendar(); c.setTime(new Date()); c.add(Calendar.DAY_OF_MONTH, 2); XMLGregorianCalendar contestStartDate = DatatypeFactory.newInstance().newXMLGregorianCalendar(c); cp.getAssetDTO().setProductionDate(contestStartDate); // build the project header Project projectHeader = new Project(); ProjectCategory projectCategory = new ProjectCategory(); projectCategory.setId(29); projectCategory.setName("Copilot Posting"); projectCategory.setProjectType(ProjectType.APPLICATION); projectHeader.setProjectCategory(projectCategory); projectHeader.setId(-1L); if (projectData.getProjectBillingAccountId() > 0) { projectHeader.setProperty( ProjectPropertyType.BILLING_PROJECT_PROJECT_PROPERTY_KEY, String.valueOf(projectData.getProjectBillingAccountId())); } else { projectHeader.setProperty(ProjectPropertyType.BILLING_PROJECT_PROJECT_PROPERTY_KEY, "0"); } projectHeader.setProperty("Confidentiality Type", "public"); projectHeader.setProperty("Copilot Cost", "0"); projectHeader.setProperty("Project Name", name); projectHeader.setTcDirectProjectId(directProject.getProjectId()); projectHeader.setTcDirectProjectName(directProject.getName()); // set spec info - do not need spec review ProjectSpec projectSpec = new ProjectSpec(); projectSpec.setProjectSpecId(0L); if (getProjectHeader() != null && getProjectHeader().getProjectSpec() != null) { projectSpec.setDetailedRequirements( getProjectHeader().getProjectSpec().getDetailedRequirements()); } projectHeader.setProjectSpec(projectSpec); // add prize List<Prize> prizes = new ArrayList<Prize>(); Prize firstPlace = new Prize(); firstPlace.setNumberOfSubmissions(1); firstPlace.setPlace(1); firstPlace.setPrizeAmount(150); firstPlace.setProjectId(directProject.getProjectId()); Prize secondPlace = new Prize(); secondPlace.setNumberOfSubmissions(1); secondPlace.setPlace(2); secondPlace.setPrizeAmount(75); secondPlace.setProjectId(directProject.getProjectId()); com.topcoder.management.project.PrizeType prizeType = new com.topcoder.management.project.PrizeType(); prizeType.setDescription("Contest Prize"); prizeType.setId(15L); firstPlace.setPrizeType(prizeType); prizes.add(firstPlace); secondPlace.setPrizeType(prizeType); prizes.add(secondPlace); projectHeader.setPrizes(prizes); projectHeader.setProperty(ProjectPropertyType.ADMIN_FEE_PROJECT_PROPERTY_KEY, "0"); projectHeader.setProperty(ProjectPropertyType.COPILOT_COST_PROJECT_PROPERTY_KEY, "0"); projectHeader.setProperty(ProjectPropertyType.DR_POINTS_PROJECT_PROPERTY_KEY, "0"); projectHeader.setProperty(ProjectPropertyType.PAYMENTS_PROJECT_PROPERTY_KEY, "150"); projectHeader.setProperty(ProjectPropertyType.FIRST_PLACE_COST_PROJECT_PROPERTY_KEY, "150"); projectHeader.setProperty(ProjectPropertyType.RELIABILITY_BONUS_COST_PROJECT_PROPERTY_KEY, "0"); projectHeader.setProperty(ProjectPropertyType.CHECKPOINT_BONUS_COST_PROJECT_PROPERTY_KEY, "0"); projectHeader.setProperty(ProjectPropertyType.SPEC_REVIEW_COSTS_PROJECT_PROPERTY_KEY, "0"); projectHeader.setProperty(ProjectPropertyType.SECOND_PLACE_COST_PROJECT_PROPERTY_KEY, "75"); projectHeader.setProperty(ProjectPropertyType.REVIEW_COSTS_PROJECT_PROPERTY_KEY, "0"); cp.setId(-1L); cp.setProjectHeader(projectHeader); initializeCompetition(cp); populateCompetition(cp); cp = getContestServiceFacade() .createSoftwareContest( DirectUtils.getTCSubjectFromSession(), cp, directProject.getProjectId(), null, null); return cp; }
public void setTimeToWait(int timeToWait) { this.timeToWait = timeToWait; project.setProperty("timeToWait", Long.toString(timeToWait)); }
public void setLogFile(String logFile) { this.logFile = logFile; project.setProperty("logFile", logFile); }