0

我正在使用 AjaxLink 更改站点区域设置:

@Override
public void onClick(AjaxRequestTarget target) {
    Session.get().setLocale(newLanguage.getLocale());
    // Add whole page to update instead of single components
    target.add(getPage());
}

它确实像我预期的那样工作,整个页面上的每个 i18n 字符串都会更新,同时保留表单内容。灿烂。

但是用 WicketTester 进行测试是行不通的。clickLink 和 executeAjaxBehavior 这两种方法都会触发 AjaxLink,但 WicketTester 不会检测到模型值的任何更改。

@Test
public void check() {
    tester.startPage(SwitchLangPage.class);
    tester.clickLink("link", true);
    tester.assertModelValue("link:label", "English");
}

我在这里错过了什么重要的东西吗?

(检票口 6.19)

编辑:带有简化面板的要点

4

0 回答 0