gpt4 book ai didi

java - 如何使用 AbstractAjaxTimerBehavior 对 Wicket 组件进行单元测试?

转载 作者:行者123 更新时间:2023-12-04 06:35:48 26 4
gpt4 key购买 nike

我有一个 Wicket 面板,上面有 AbstractAjaxTimeBehavior ,我想进行单元测试。如何在单元测试期间触发最终调用 AbstractAjaxTimeBehavior 的 ajax 事件的 .onTimer(AjaxRequestTarget target)方法?

behavior = new AbstractAjaxTimerBehavior(Duration.seconds(pollingPeriodInSeconds)) {
protected void onTimer(AjaxRequestTarget target) {
// how to unit test this?
}
}
add(behavior);

最佳答案

由于计时器行为不会像在浏览器中那样自行触发,因此您必须使用 executeBehavior(AbstractAjaxBehavior)你自己。

if (!timerBehavior.isStopped())
wicketTester.executeBehavior(timerBehavior);

看看 executeAllTimerBehaviors(MarkupContainer)的代码就知道了.请注意,此方法适用于 AjaxSelfUpdatingTimerBehavior只要。

关于java - 如何使用 AbstractAjaxTimerBehavior 对 Wicket 组件进行单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4895514/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com