0

我正在尝试对 AjaxFormComponentUpdatingBehavior onUpdate 事件进行单元测试。到目前为止,我有这个:

AjaxFormComponentUpdatingBehavior updatingBehavior = (AjaxFormComponentUpdatingBehavior)
                WicketTesterHelper.findBehavior(tester.getComponentFromLastRenderedPage("test:form:upc"), AjaxFormComponentUpdatingBehavior.class);

tester.executeBehavior(updatingBehavior);

但是,这不会执行我已覆盖的“onUpdate”。最终,在行为中,我在我的页面上启用了一个组件,并且我想断言在执行该行为后该组件已启用。如何确保在我的单元测试中触发“onUpdate”?

4

1 回答 1

0

奇怪的。我做了类似的事情,它的工作方式就像它应该的那样。我可以调试它并获得一个被覆盖的onUpdate. 我不知道 WicketTesterHelper,但它看起来也很有用 :)

for ( Behavior b : component.getBehaviors() )
{
    if ( b instanceof AjaxFormComponentUpdatingBehavior )
    {
        this.getWicketTester().executeBehavior( (AbstractAjaxBehavior) b );
    }
}
于 2013-09-11T09:26:45.653 回答