模拟document.referrer Angular Jasmine

Dri*_*bel 5 unit-testing jasmine angularjs

我试图提供不同的价值

document.referrer
Run Code Online (Sandbox Code Playgroud)

我的单元测试.我该如何模拟并提供定制值?

Chu*_*Sun 5

检查document.referrer,我们发现它是一个吸气剂: 在此处输入图片说明

使用 Jasmine 2.6,您可以创建一个 spy 来更改任何 getter 函数的返回值。

spyOnProperty(document, 'referrer', 'get').and.returnValue('http://foobar.com');
expect(document.referrer).toBe('http://foobar.com');
Run Code Online (Sandbox Code Playgroud)

您可以在最新的API 文档中阅读更多内容