mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-14 17:58:59 +00:00
Merged HEAD-BUG-FIX (4.3/Cloud) to HEAD (4.3/Cloud)
61122: Merged V4.2-BUG-FIX (4.2.2) to HEAD-BUG-FIX (Cloud/4.3) 60991: Merged DEV to V4.2-BUG-FIX 60325 : MNT-10404 : Runas problem in workflow when package contains versioned content Added some unit tests. 60443 : MNT-10404 : Runas problem in workflow when package contains versioned content Added tests, debug log. Run work as system user in VersionableAspect. 60452 : MNT-10404 : Runas problem in workflow when package contains versioned content Wrap debug statements. 60492 : MNT-10404 : Runas problem in workflow when package contains versioned content Fix if statement indents. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@62387 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -18,16 +18,22 @@
|
||||
*/
|
||||
package org.alfresco.repo.web.scripts.person;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
import org.alfresco.model.ContentModel;
|
||||
import org.alfresco.repo.security.authentication.AuthenticationComponent;
|
||||
import org.alfresco.repo.security.authentication.AuthenticationUtil;
|
||||
import org.alfresco.repo.security.authentication.AuthenticationUtil.RunAsWork;
|
||||
import org.alfresco.repo.security.person.UserNameMatcherImpl;
|
||||
import org.alfresco.repo.web.scripts.BaseWebScriptTest;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.cmr.security.MutableAuthenticationService;
|
||||
import org.alfresco.service.cmr.security.NoSuchPersonException;
|
||||
import org.alfresco.service.cmr.security.PersonService;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
import org.alfresco.util.PropertyMap;
|
||||
import org.springframework.extensions.surf.util.URLEncoder;
|
||||
import org.springframework.extensions.webscripts.Status;
|
||||
@@ -404,4 +410,67 @@ public class PersonServiceTest extends BaseWebScriptTest
|
||||
|
||||
this.authenticationComponent.setCurrentUser(currentUser);
|
||||
}
|
||||
|
||||
public void test_MNT10404_AuthenticationUtil()
|
||||
{
|
||||
AuthenticationUtil.setFullyAuthenticatedUser(AuthenticationUtil.getAdminUserName());
|
||||
|
||||
String user1 = "user1";
|
||||
String user2 = "user2";
|
||||
String user3 = "user3";
|
||||
|
||||
List<String> users = new ArrayList<String>();
|
||||
try
|
||||
{
|
||||
users.add(user1);
|
||||
users.add(user2);
|
||||
users.add(user3);
|
||||
|
||||
for (String user : users)
|
||||
{
|
||||
createPerson(user);
|
||||
|
||||
assertEquals(user, getAuthInRun(user));
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (users.size() > 0)
|
||||
{
|
||||
for (String user : users)
|
||||
{
|
||||
if (personService.personExists(user))
|
||||
{
|
||||
personService.deletePerson(user);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private String getAuthInRun(String userName)
|
||||
{
|
||||
RunAsWork<String> getWork = new RunAsWork<String>()
|
||||
{
|
||||
@Override
|
||||
public String doWork() throws Exception
|
||||
{
|
||||
return AuthenticationUtil.getRunAsUser();
|
||||
}
|
||||
};
|
||||
return AuthenticationUtil.runAs(getWork, userName);
|
||||
}
|
||||
|
||||
private NodeRef createPerson(String userName)
|
||||
{
|
||||
if (personService.personExists(userName))
|
||||
{
|
||||
personService.deletePerson(userName);
|
||||
}
|
||||
|
||||
HashMap<QName, Serializable> properties = new HashMap<QName, Serializable>();
|
||||
properties.put(ContentModel.PROP_USERNAME, userName);
|
||||
|
||||
return personService.createPerson(properties);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user