单元测试抛出默认管理员用户名不可用错误

时间:2019-11-01 00:25:26

标签: java mockito alfresco

我正在使用alfresco6。在我要测试的方法之一中,具有以下代码:

if(AuthenticationUtil.getFullyAuthenticatedUser().equals("xyz"))
{
        return;
}

在进行此单元测试时,我想强制此条件为假。

在单元测试中,我有一个@Before,其内容如下:

AuthenticationUtil.setAdminUserAsFullyAuthenticatedUser();

在实际测试中,我没有与AuthenticationUtil相关的任何代码。

我收到以下错误:

java.lang.IllegalStateException: AuthenticationUtil not yet initialised; default admin username not available
at org.alfresco.repo.security.authentication.AuthenticationUtil.getAdminUserName(AuthenticationUtil.java:450)

我想念什么?

1 个答案:

答案 0 :(得分:2)

检查AuthenticationUtil.setAdminUserAsFullyAuthenticatedUser();方法。

它很可能运行AuthenticationUtil.getAdminUserName()类的第450行上的AuthenticationUtil方法,并且似乎需要用户名admin。