如何使用JUnit模拟FacesContext?

时间:2011-11-14 15:19:03

标签: oracle-adf

我正在使用JUnit 4,

我想模拟FacesContext实例,我在为包含FacesContext实例的方法编写测试用例时遇到nullpointer错误,类似于DataBinding和BindignContainer ..等等。 / p>

我在Util类中的方法:

public static String resolveUserPrincipal() {
    FacesContext facesContext = FacesContext.getCurrentInstance(); // here I am null
    ExternalContext ectx = facesContext.getExternalContext();
    HttpServletRequest request = (HttpServletRequest)ectx.getRequest();
    return request.getUserPrincipal().getName();
}

我的TestCase方法:

@Test
public void testResolveExpression() {
    JSFUtils utils = new JSFUtils();
    //utils.resolveExpression(null);
    System.out.println(utils.resolveUserPrincipal());
    System.out.println("============== "+FacesContext.getCurrentInstance());
}

谢谢!

0 个答案:

没有答案