如何使用ng-model-option去抖动测试输入?

时间:2016-02-02 08:17:12

标签: javascript angularjs jasmine angular-ngmodel

我有ng-model-options="{debounce:250}"

的输入

并说我对元素进行了更改并监视该函数。 现在,如果我对输入进行简单测试,如:

it('test', function(){
  input.val('hello');

  expect(ngChangeSpy).toHaveBeenCalledWith('hello');
})
显然这不起作用。我已经看到你可以等待承诺解决等等,但在这里我只想等待250毫秒才能改变模型。有没有办法实现这个目标?

1 个答案:

答案 0 :(得分:0)

如果您不想测试250ms的延迟,可以使用$ timeout.flush()https://docs.angularjs.org/api/ngMock/service/ $ timeout来刷新延迟函数。