【问题标题】:How to check if location is changed and controller loaded如何检查位置是否已更改和控制器是否已加载
【发布时间】:2015-07-12 18:46:40
【问题描述】:

我正在尝试为执行 POST 然后更改页面的控制器编写单元测试。如何检查路径是否已加载以及该路径的控制器是否已加载?

【问题讨论】:

    标签: angularjs jasmine karma-jasmine angular-mock


    【解决方案1】:

    您无法检查与给定路径关联的控制器是否已加载。那将不再是单元测试,而是端到端测试。被测控制器的职责是改变位置,这就是你的单元测试应该关注的全部。

    要测试位置是否已更改,请监视其方法:

    spyOn($location, 'url');
    theController.doSomething();
    // TODO check the POST request, flush the $httpBackend, etc.
    expect($location.url).toHaveBeenCalledWith('/the/expected/new/url');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-22
      • 2020-01-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多