RM-766 (Rule property substitutions missing)

- Extended the test

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@53596 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Tuna Aksoy
2013-08-04 13:07:02 +00:00
parent a53f6f6907
commit e690b3386b
2 changed files with 64 additions and 26 deletions

View File

@@ -155,15 +155,27 @@ public class ExtendedActionServiceTest extends BaseRMTestCase
{ {
Action action = dmActionService.createAction(TestActionPropertySubs.NAME); Action action = dmActionService.createAction(TestActionPropertySubs.NAME);
action.setParameterValue("longMonth", "${date.month.long}"); action.setParameterValue("dayShort", "${date.day.short}");
action.setParameterValue("shortMonth", "${date.month}"); action.setParameterValue("dayShort2", "${date.day}");
action.setParameterValue("year", "${date.year.long}"); action.setParameterValue("dayLong", "${date.day.long}");
action.setParameterValue("dayNumber", "${date.day.number}");
action.setParameterValue("dayYear", "${date.day.year}");
action.setParameterValue("monthShort", "${date.month.short}");
action.setParameterValue("monthShort2", "${date.month}");
action.setParameterValue("monthLong", "${date.month.long}");
action.setParameterValue("monthNumber", "${date.month.number}");
action.setParameterValue("yearShort", "${date.year.short}");
action.setParameterValue("yearShort2", "${date.year}");
action.setParameterValue("yearLong", "${date.year.long}");
action.setParameterValue("yearWeek", "${date.year.week}");
action.setParameterValue("name", "${node.cm:name}"); action.setParameterValue("name", "${node.cm:name}");
action.setParameterValue("company", "${message.test.company}"); action.setParameterValue("company", "${message.test.company}");
action.setParameterValue("combo", "${date.year}/${date.month.short}/${node.cm:name}-${message.test.company}.txt"); action.setParameterValue("combo", "${date.year.long}/${date.month.short}/${node.cm:name}-${message.test.company}.txt");
dmActionService.executeAction(action, rmFolder); dmActionService.executeAction(action, rmFolder);

View File

@@ -18,9 +18,9 @@
*/ */
package org.alfresco.module.org_alfresco_module_rm.test.util; package org.alfresco.module.org_alfresco_module_rm.test.util;
import java.util.Calendar; import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Locale;
import org.alfresco.error.AlfrescoRuntimeException; import org.alfresco.error.AlfrescoRuntimeException;
import org.alfresco.model.ContentModel; import org.alfresco.model.ContentModel;
@@ -35,37 +35,63 @@ import org.springframework.extensions.surf.util.I18NUtil;
public class TestActionPropertySubs extends RMActionExecuterAbstractBase public class TestActionPropertySubs extends RMActionExecuterAbstractBase
{ {
public static final String NAME = "testActionPropertySubs"; public static final String NAME = "testActionPropertySubs";
@Override @Override
protected void addParameterDefinitions(List<ParameterDefinition> paramList) protected void addParameterDefinitions(List<ParameterDefinition> paramList)
{ {
paramList.add(new ParameterDefinitionImpl("shortMonth", DataTypeDefinition.TEXT, false, "")); paramList.add(new ParameterDefinitionImpl("dayShort", DataTypeDefinition.TEXT, false, ""));
paramList.add(new ParameterDefinitionImpl("longMonth", DataTypeDefinition.TEXT, false, "")); paramList.add(new ParameterDefinitionImpl("dayShort2", DataTypeDefinition.TEXT, false, ""));
paramList.add(new ParameterDefinitionImpl("year", DataTypeDefinition.TEXT, false, "")); paramList.add(new ParameterDefinitionImpl("dayLong", DataTypeDefinition.TEXT, false, ""));
paramList.add(new ParameterDefinitionImpl("name", DataTypeDefinition.TEXT, false, "")); paramList.add(new ParameterDefinitionImpl("dayNumber", DataTypeDefinition.TEXT, false, ""));
paramList.add(new ParameterDefinitionImpl("company", DataTypeDefinition.TEXT, false, "")); paramList.add(new ParameterDefinitionImpl("dayYear", DataTypeDefinition.TEXT, false, ""));
paramList.add(new ParameterDefinitionImpl("monthShort", DataTypeDefinition.TEXT, false, ""));
paramList.add(new ParameterDefinitionImpl("monthShort2", DataTypeDefinition.TEXT, false, ""));
paramList.add(new ParameterDefinitionImpl("monthLong", DataTypeDefinition.TEXT, false, ""));
paramList.add(new ParameterDefinitionImpl("monthNumber", DataTypeDefinition.TEXT, false, ""));
paramList.add(new ParameterDefinitionImpl("yearShort", DataTypeDefinition.TEXT, false, ""));
paramList.add(new ParameterDefinitionImpl("yearShort2", DataTypeDefinition.TEXT, false, ""));
paramList.add(new ParameterDefinitionImpl("yearLong", DataTypeDefinition.TEXT, false, ""));
paramList.add(new ParameterDefinitionImpl("yearWeek", DataTypeDefinition.TEXT, false, ""));
paramList.add(new ParameterDefinitionImpl("name", DataTypeDefinition.TEXT, false, ""));
paramList.add(new ParameterDefinitionImpl("company", DataTypeDefinition.TEXT, false, ""));
paramList.add(new ParameterDefinitionImpl("combo", DataTypeDefinition.TEXT, false, "")); paramList.add(new ParameterDefinitionImpl("combo", DataTypeDefinition.TEXT, false, ""));
} }
@Override @Override
protected void executeImpl(Action action, NodeRef actionedUponNodeRef) protected void executeImpl(Action action, NodeRef actionedUponNodeRef)
{ {
Calendar myToday = Calendar.getInstance(); Date date = new Date();
String dayShort = new SimpleDateFormat("EE").format(date);
String shortMonth = myToday.getDisplayName(Calendar.MONTH, Calendar.SHORT, Locale.getDefault()); String dayLong = new SimpleDateFormat("EEEE").format(date);
String longMonth = myToday.getDisplayName(Calendar.MONTH, Calendar.LONG, Locale.getDefault()); String dayNumber = new SimpleDateFormat("u").format(date);
String year = Integer.toString(myToday.get(Calendar.YEAR)); String dayYear = new SimpleDateFormat("D").format(date);
String name = (String)nodeService.getProperty(actionedUponNodeRef, ContentModel.PROP_NAME); String monthShort = new SimpleDateFormat("MMM").format(date);
String monthLong = new SimpleDateFormat("MMMM").format(date);
String monthNumber = new SimpleDateFormat("MM").format(date);
String yearShort = new SimpleDateFormat("yy").format(date);
String yearLong = new SimpleDateFormat("yyyy").format(date);
String yearWeek = new SimpleDateFormat("w").format(date);
String name = (String) nodeService.getProperty(actionedUponNodeRef, ContentModel.PROP_NAME);
String company = I18NUtil.getMessage("test.company"); String company = I18NUtil.getMessage("test.company");
assertEquals(shortMonth, (String)action.getParameterValue("shortMonth")); assertEquals(dayShort, (String) action.getParameterValue("dayShort"));
assertEquals(longMonth, (String)action.getParameterValue("longMonth")); assertEquals(dayShort, (String) action.getParameterValue("dayShort2"));
assertEquals(year, (String)action.getParameterValue("year")); assertEquals(dayLong, (String) action.getParameterValue("dayLong"));
assertEquals(dayNumber, (String) action.getParameterValue("dayNumber"));
assertEquals(dayYear, (String) action.getParameterValue("dayYear"));
assertEquals(monthShort, (String) action.getParameterValue("monthShort"));
assertEquals(monthShort, (String) action.getParameterValue("monthShort2"));
assertEquals(monthLong, (String) action.getParameterValue("monthLong"));
assertEquals(monthNumber, (String) action.getParameterValue("monthNumber"));
assertEquals(yearShort, (String) action.getParameterValue("yearShort"));
assertEquals(yearShort, (String) action.getParameterValue("yearShort2"));
assertEquals(yearLong, (String) action.getParameterValue("yearLong"));
assertEquals(yearWeek, (String) action.getParameterValue("yearWeek"));
assertEquals(name, (String)action.getParameterValue("name")); assertEquals(name, (String)action.getParameterValue("name"));
assertEquals(company, (String)action.getParameterValue("company")); assertEquals(company, (String)action.getParameterValue("company"));
assertEquals(year + "/" + shortMonth + "/" + name + "-" + company +".txt", (String)action.getParameterValue("combo")); assertEquals(yearLong + "/" + monthShort + "/" + name + "-" + company +".txt", (String) action.getParameterValue("combo"));
} }
private void assertEquals(String expected, String actual) private void assertEquals(String expected, String actual)
{ {
if (expected.equals(actual) == false) if (expected.equals(actual) == false)