小编use*_*778的帖子

Jasmine.js测试 - 窥探window.navigator.userAgent

我需要找到改变userAgent价值的方法.我试过spyOnwindow.navigator.userAgent.但这没有帮助.

JS:

@Injectable()
export class DetectBrowserService {
  browserIE: boolean;
  constructor() {
    this.browserIE = this.detectExplorer();
  }

  public detectExplorer() {
    const brows = window.navigator.userAgent;
    const msie = brows.indexOf('MSIE ');
    if (msie > 0) {
      // IE 10 or older => return version number
      return true;
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

规格:

it('should test window.navigator.userAgent', () => {
  const wind = jasmine.createSpy('window.navigator.userAgent');
  wind.and.returnValue('1111');
  detectBrowserService = TestBed.get(DetectBrowserService);
  console.log(window.navigator.userAgent);
});
Run Code Online (Sandbox Code Playgroud)

我期待1111,但得到了关于我的浏览器的真实信息.

unit-testing jasmine karma-jasmine spyon angular

5
推荐指数
2
解决办法
3556
查看次数

标签 统计

angular ×1

jasmine ×1

karma-jasmine ×1

spyon ×1

unit-testing ×1