Merged HEAD-BUG-FIX (5.1/Cloud) to HEAD (5.1/Cloud)

94379: Merged 5.0.N (5.0.1) to HEAD-BUG-FIX (5.1/Cloud)
      94324: Merged DEV to V5.0.N (5.0.1)
         94107: MNT-13084: Invitation email to the site are not received
            - Support both Object[] and List<> subject params.
         94248: MNT-13084: Invitation email to the site are not received
            - Add support for String value in PARAM_SUBJECT_PARAMS
            - Add unit test. 


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@95080 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Alan Davis
2015-01-31 15:40:04 +00:00
parent 955219c5cd
commit f0546e3819
2 changed files with 50 additions and 3 deletions

View File

@@ -25,6 +25,7 @@ import java.util.Arrays;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import javax.mail.Address;
@@ -54,6 +55,7 @@ import org.alfresco.service.cmr.security.PermissionService;
import org.alfresco.service.cmr.security.PersonService;
import org.alfresco.service.namespace.QName;
import org.alfresco.service.transaction.TransactionService;
import org.alfresco.util.Pair;
import org.alfresco.util.PropertyMap;
import org.alfresco.util.test.junitrules.AlfrescoPerson;
import org.alfresco.util.test.junitrules.ApplicationContextInit;
@@ -384,6 +386,35 @@ public abstract class AbstractMailActionExecuterTest
}
}
@Test
public void testPrepareEmailSubjectParams()
{
Action mailAction = ACTION_SERVICE.createAction(MailActionExecuter.NAME);
mailAction.setParameterValue(MailActionExecuter.PARAM_TO, "some.bodyelse@example.com");
mailAction.setParameterValue(MailActionExecuter.PARAM_TEMPLATE, "alfresco/templates/mail/test.txt.ftl");
mailAction.setParameterValue(MailActionExecuter.PARAM_SUBJECT, "Test Subject Params");
mailAction.setParameterValue(MailActionExecuter.PARAM_TEMPLATE_MODEL, getModel());
Pair<String, Locale> recipient = new Pair<String, Locale>("test", Locale.ENGLISH);
mailAction.setParameterValue(MailActionExecuter.PARAM_SUBJECT_PARAMS, new Object[] {"Test", "Subject", "Params", "Object", "Array"});
Assert.assertNotNull("We should support Object[] value for PARAM_SUBJECT_PARAMS", ACTION_EXECUTER.prepareEmail(mailAction, null, recipient, null));
ArrayList<Object> params = new ArrayList<Object>();
params.add("Test");
params.add("Subject");
params.add("Params");
params.add("ArrayList");
mailAction.setParameterValue(MailActionExecuter.PARAM_SUBJECT_PARAMS, params);
Assert.assertNotNull("We should support List<Object> value for PARAM_SUBJECT_PARAMS", ACTION_EXECUTER.prepareEmail(mailAction, null, recipient, null));
mailAction.setParameterValue(MailActionExecuter.PARAM_SUBJECT_PARAMS, "Test Subject Params Single String");
Assert.assertNotNull("We should support String value for PARAM_SUBJECT_PARAMS", ACTION_EXECUTER.prepareEmail(mailAction, null, recipient, null));
mailAction.setParameterValue(MailActionExecuter.PARAM_SUBJECT_PARAMS, null);
Assert.assertNotNull("We should support null value for PARAM_SUBJECT_PARAMS", ACTION_EXECUTER.prepareEmail(mailAction, null, recipient, null));
}
/**
* Creates a test user with the specified username and optionally custom email.
*