angularjs 如何模拟angular.element(document).injector().get('$location');在茉莉花3.6?

qvtsj1bj  于 2023-09-30  发布在  Angular
关注(0)|答案(1)|浏览(153)

我现在正面临一个问题。我不知道该如何嘲笑这种方法:

private angularLocation = angular.element(document).injector().get('$location');

我有一个混合的angular应用程序,这个方法用于在angular到angularjs页面之间导航。我已经尝试了这个thread的建议,但它没有工作。请看下面的截图:
screenshot
我使用Jasmine 3.6.0。

bvuwiixz

bvuwiixz1#

it('should navigate to a specific path', () => {
  mockLocation.path.and.returnValue('/somePath');

  // Execute some function in your code that eventually calls $location.path()
  yourFunctionUnderTest();

  expect(mockLocation.path).toHaveBeenCalledWith('/somePath');
});

你打电话的时候要注射这个。

相关问题