Merge Sabre4 to HEAD

110660: New ModulePackages api endpoint for RA-370


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@111187 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Gethin James
2015-09-01 13:04:38 +00:00
parent eae59798ba
commit 876fce75a4

View File

@@ -36,49 +36,53 @@ import junit.framework.TestCase;
*/ */
public class ModuleDetailsImplTest extends TestCase public class ModuleDetailsImplTest extends TestCase
{ {
private Properties defaultProperties; public static Properties DEFAULT_PROPS;
@Override static {
protected void setUp() throws Exception DEFAULT_PROPS = new Properties();
{ DEFAULT_PROPS.setProperty(ModuleDetails.PROP_ID, "org.alfresco.module.Test");
defaultProperties = new Properties(); DEFAULT_PROPS.setProperty(ModuleDetails.PROP_ALIASES, "test, Test");
defaultProperties.setProperty(ModuleDetails.PROP_ID, "org.alfresco.module.Test"); DEFAULT_PROPS.setProperty(ModuleDetails.PROP_TITLE, "Test");
defaultProperties.setProperty(ModuleDetails.PROP_ALIASES, "test, Test"); DEFAULT_PROPS.setProperty(ModuleDetails.PROP_DESCRIPTION, "Test description");
defaultProperties.setProperty(ModuleDetails.PROP_TITLE, "Test"); DEFAULT_PROPS.setProperty(ModuleDetails.PROP_VERSION, "1.0.0");
defaultProperties.setProperty(ModuleDetails.PROP_DESCRIPTION, "Test description"); DEFAULT_PROPS.setProperty(ModuleDetails.PROP_EDITIONS, "Community, Enterprise");
defaultProperties.setProperty(ModuleDetails.PROP_VERSION, "1.0.0"); DEFAULT_PROPS.setProperty(ModuleDetails.PROP_REPO_VERSION_MIN, new VersionNumber("1.2").toString());
defaultProperties.setProperty(ModuleDetails.PROP_EDITIONS, "Community, Enterprise"); DEFAULT_PROPS.setProperty(ModuleDetails.PROP_REPO_VERSION_MAX, new VersionNumber("1.4.3").toString());
defaultProperties.setProperty(ModuleDetails.PROP_REPO_VERSION_MIN, new VersionNumber("1.2").toString()); DEFAULT_PROPS.setProperty(ModuleDetails.PROP_DEPENDS_PREFIX + "a", "1.2.3");
defaultProperties.setProperty(ModuleDetails.PROP_REPO_VERSION_MAX, new VersionNumber("1.4.3").toString()); DEFAULT_PROPS.setProperty(ModuleDetails.PROP_DEPENDS_PREFIX + "b", "*");
defaultProperties.setProperty(ModuleDetails.PROP_DEPENDS_PREFIX + "a", "1.2.3"); DEFAULT_PROPS.setProperty(ModuleDetails.PROP_DEPENDS_PREFIX + "c", "- 1.2");
defaultProperties.setProperty(ModuleDetails.PROP_DEPENDS_PREFIX + "b", "*"); DEFAULT_PROPS.setProperty(ModuleDetails.PROP_DEPENDS_PREFIX + "d", "1.2 -");
defaultProperties.setProperty(ModuleDetails.PROP_DEPENDS_PREFIX + "c", "- 1.2"); DEFAULT_PROPS.setProperty(ModuleDetails.PROP_DEPENDS_PREFIX + "e", "* - 1.2");
defaultProperties.setProperty(ModuleDetails.PROP_DEPENDS_PREFIX + "d", "1.2 -"); DEFAULT_PROPS.setProperty(ModuleDetails.PROP_DEPENDS_PREFIX + "f", "1.2 - *");
defaultProperties.setProperty(ModuleDetails.PROP_DEPENDS_PREFIX + "e", "* - 1.2"); DEFAULT_PROPS.setProperty(ModuleDetails.PROP_DEPENDS_PREFIX + "g", "0.5, 0.6");
defaultProperties.setProperty(ModuleDetails.PROP_DEPENDS_PREFIX + "f", "1.2 - *"); DEFAULT_PROPS.setProperty(ModuleDetails.PROP_DEPENDS_PREFIX + "h", "0.5 - 0.6, 0.9 - *");
defaultProperties.setProperty(ModuleDetails.PROP_DEPENDS_PREFIX + "g", "0.5, 0.6"); DEFAULT_PROPS.setProperty(ModuleDetails.PROP_INSTALL_STATE, ModuleInstallState.INSTALLED.toString());
defaultProperties.setProperty(ModuleDetails.PROP_DEPENDS_PREFIX + "h", "0.5 - 0.6, 0.9 - *");
defaultProperties.setProperty(ModuleDetails.PROP_INSTALL_STATE, ModuleInstallState.INSTALLED.toString());
} }
@SuppressWarnings("unused") @SuppressWarnings("unused")
public void testDefaults() public void testDefaults()
{ {
ModuleDetails details = new ModuleDetailsImpl(defaultProperties); Properties props = new Properties();
props.putAll(DEFAULT_PROPS);
ModuleDetails details = new ModuleDetailsImpl(props);
} }
public void testWriteAndReadProperties() public void testWriteAndReadProperties()
{ {
ModuleDetails details = new ModuleDetailsImpl(defaultProperties); Properties props = new Properties();
props.putAll(DEFAULT_PROPS);
ModuleDetails details = new ModuleDetailsImpl(props);
// convert back to properties // convert back to properties
Properties processedProperties = details.getProperties(); Properties processedProperties = details.getProperties();
assertEquals("The number of properties changed", defaultProperties.size(), processedProperties.size()); assertEquals("The number of properties changed", props.size(), processedProperties.size());
assertEquals("The properties are different", defaultProperties, processedProperties); assertEquals("The properties are different", props, processedProperties);
} }
public void testDependencyChecks() public void testDependencyChecks()
{ {
ModuleDetails details = new ModuleDetailsImpl(defaultProperties); Properties props = new Properties();
props.putAll(DEFAULT_PROPS);
ModuleDetails details = new ModuleDetailsImpl(props);
Properties tempProperties = new Properties(); Properties tempProperties = new Properties();
tempProperties.setProperty(ModuleDetails.PROP_ID, "a"); tempProperties.setProperty(ModuleDetails.PROP_ID, "a");
@@ -101,20 +105,24 @@ public class ModuleDetailsImplTest extends TestCase
public void testTrimming() throws Exception public void testTrimming() throws Exception
{ {
defaultProperties.setProperty(ModuleDetails.PROP_INSTALL_STATE, " "); Properties props = new Properties();
ModuleDetails details = new ModuleDetailsImpl(defaultProperties); props.putAll(DEFAULT_PROPS);
props.setProperty(ModuleDetails.PROP_INSTALL_STATE, " ");
ModuleDetails details = new ModuleDetailsImpl(props);
assertEquals("Expected the install state to be UNKNOWN", ModuleInstallState.UNKNOWN, details.getInstallState()); assertEquals("Expected the install state to be UNKNOWN", ModuleInstallState.UNKNOWN, details.getInstallState());
} }
public void testInvalidIds() throws Exception public void testInvalidIds() throws Exception
{ {
Properties props = new Properties();
props.putAll(DEFAULT_PROPS);
String[] invalidIds = new String[] {"", " ", "$", "module$Test", "module.Test$", "org alfresco module Test"}; String[] invalidIds = new String[] {"", " ", "$", "module$Test", "module.Test$", "org alfresco module Test"};
for (String invalidId : invalidIds) for (String invalidId : invalidIds)
{ {
try try
{ {
defaultProperties.setProperty(ModuleDetails.PROP_ID, invalidId); props.setProperty(ModuleDetails.PROP_ID, invalidId);
new ModuleDetailsImpl(defaultProperties); new ModuleDetailsImpl(props);
fail("Invalid ID not detected: " + invalidId); fail("Invalid ID not detected: " + invalidId);
} }
catch (AlfrescoRuntimeException e) catch (AlfrescoRuntimeException e)
@@ -126,11 +134,13 @@ public class ModuleDetailsImplTest extends TestCase
public void testValidIds() throws Exception public void testValidIds() throws Exception
{ {
Properties props = new Properties();
props.putAll(DEFAULT_PROPS);
String[] validIds = new String[] {"abc123", " abc123 ", "a-b-c", "a.b.c", "a_b_c", "A.1.2.3"}; String[] validIds = new String[] {"abc123", " abc123 ", "a-b-c", "a.b.c", "a_b_c", "A.1.2.3"};
for (String validId : validIds) for (String validId : validIds)
{ {
defaultProperties.setProperty(ModuleDetails.PROP_ID, validId); props.setProperty(ModuleDetails.PROP_ID, validId);
new ModuleDetailsImpl(defaultProperties); new ModuleDetailsImpl(props);
} }
} }
} }