Project implements Serializable, Runnable { boolean checkOnlySinceLastBuild() { if (lastBuild == null || lastSuccessfulBuild == null) { return false; } final long lastBuildLong = lastBuild.getTime(); final long timeDifference = lastBuildLong - lastSuccessfulBuild.getTime(); final boolean moreThanASecond = timeDifference > DateUtil.ONE_SECOND; return !buildAfterFailed && moreThanASecond; } Project(); void execute(); void run(); void forceBuildWithTarget(String buildTarget); void forceBuildWithTarget(String buildTarget, Map<String, String> addedProperties); void serializeProject(); void setLabelIncrementer(final LabelIncrementer incrementer); LabelIncrementer getLabelIncrementer(); void setName(final String projectName); String getName(); void setLabel(final String newLabel); String getLabel(); void setLastBuild(final String newLastBuild); void setLastSuccessfulBuild(final String newLastSuccessfulBuild); String getLastBuild(); boolean getBuildForced(); void setBuildForced(boolean forceNewBuildNow); String getLastSuccessfulBuild(); String getLogDir(); long getBuildInterval(); void overrideBuildInterval(final long sleepMillis); boolean isPaused(); void setPaused(final boolean paused); void setBuildAfterFailed(final boolean rebuildEvenWithNoNewModifications); String getStatus(); String getStatusWithQueuePosition(); ProjectState getState(); void setBuildQueue(final BuildQueue buildQueue); String getBuildStartTime(); Log getLog(); boolean isLastBuildSuccessful(); void start(); void stop(); String toString(); void addBuildProgressListener(final BuildProgressListener listener); void addBuildResultListener(final BuildResultListener listener); void setProjectConfig(final ProjectConfig projectConfig); boolean equals(final Object arg0); int hashCode(); void register(final MBeanServer server); ProjectConfig getProjectConfig(); Date getLastBuildDate(); Progress getProgress(); List<String> getLogLabels(); String[] getLogLabelLines(final String logLabel, final int firstLine);  }
@Test public void testCheckOnlySinceLastBuild() throws CruiseControlException { project.setLastBuild("20030218010101"); project.setLastSuccessfulBuild("20030218010101"); assertEquals(false, project.checkOnlySinceLastBuild()); project.setLastBuild("20030218020202"); assertEquals(false, project.checkOnlySinceLastBuild()); project.setBuildAfterFailed(false); assertEquals(true, project.checkOnlySinceLastBuild()); project.setLastBuild("20030218010102"); assertEquals(false, project.checkOnlySinceLastBuild()); project.setLastBuild("20020101010101"); assertEquals(false, project.checkOnlySinceLastBuild()); }