SVN implements SourceControl { public void setProperty(String property) { properties.assignPropertyName(property); }  Map<String, String> getProperties(); void setProperty(String property); void setPropertyOnDelete(String propertyOnDelete); void setConfigDir(String configDir); void setCheckExternals(boolean value); void setRepositoryLocation(String repositoryLocation); void setLocalWorkingCopy(String localWorkingCopy); void setUsername(String userName); void setPassword(String password); void validate(); List<Modification> getModifications(final Date lastBuild, final Date now); static DateFormat getOutDateFormatter(); void setUseLocalRevision(boolean useLocalRevision);  }
@Test public void testSetProperty() throws ParseException { svn.setProperty("hasChanges?"); final List<Modification> noModifications = new ArrayList<Modification>(); svn.fillPropertiesIfNeeded(noModifications); assertEquals(null, svn.getProperties().get("hasChanges?")); final List<Modification> hasModifications = new ArrayList<Modification>(); hasModifications.add(createModification(SVN.getOutDateFormatter().parse("2003-08-02T10:01:13.349"), "lee", "bli", "333", "", "/trunk/playground/bbb", "deleted")); hasModifications.add(createModification(SVN.getOutDateFormatter().parse("2003-08-02T10:01:13.349"), "lee", "bli", "663", "", "/trunk/playground/bbb", "added")); svn.fillPropertiesIfNeeded(hasModifications); final Map<String, String> properties = svn.getProperties(); assertThat(properties.get("hasChanges?"), equalTo("true")); assertThat(properties.get("svnrevision"), equalTo("663")); }