我使用ng2-idle在一段時間後自動註銷用戶。我初始化它在我appComponent構造:爲量角器測試停止ng2-idle
import {Idle, DEFAULT_INTERRUPTSOURCES} from '@ng-idle/core';
export class AppComponent {
constructor(
private idle:Idle) {
idle.setIdle(21600);
idle.setTimeout(1);
idle.setInterrupts(DEFAULT_INTERRUPTSOURCES);
idle.onTimeout.subscribe(() => { this.logout(); });
};
成功登錄我使用this.idle.watch()
啓動它在我LoginComponent(空閒注入的構造函數)。
這一切工作正常,但是當我去跑量角器測試他們超時,我認爲是因爲量角器等待超時結束這將需要一段時間,因爲我將ng2-idle設置爲6小時!
Error: Timeout - Async callback was not invoked within timeout specified by jasmine.DEFAULT_TIMEOUT_INTERVAL.
如果我沒有初始化使用Idle.watch()
那麼測試運行。
我想要做的是設置Idle.stop();
在我量角器配置文件中onPrepare
塊並將其重置爲Idle.watch();
測試是在我onComplete
塊完成後。
我試圖在量角器的conf文件var idle = require('@ng-idle/core');
但將我帶回了以下內容:
ReferenceError: document is not defined
那麼,怎樣才能我需要量角器配置文件中的NG2空閒模塊?
我打了同樣的問題,試圖找出。如果idle +超時值小於DEFAULT_TIMEOUT_INTERVAL,則測試似乎正在運行。 – santon