【发布时间】:2018-11-22 06:44:17
【问题描述】:
我正在尝试测试一种启动模式的方法,以前有没有人这样做过,有人可以指出我正确的方向吗?我编写了以下测试套件。
describe('bdb modal provider test suite', () => {
let bdbModal: BdbModalProvider;
let modal: Modal;
let modalCtrl: ModalController;
beforeEach(() => {
TestBed.configureTestingModule({
providers: [
BdbModalProvider,
{ provide: ModalController, useClass: ModalControllerMock }
]
});
bdbModal = TestBed.get(BdbModalProvider);
modalCtrl = TestBed.get(ModalController);
});
beforeEach(() => {
modal = modalCtrl.create('ModalErrorPage', {});
});
it('should launch error modal', () => {
spyOn(modal, 'present');
bdbModal.launchErrModal('testing', 'error modal', 'OK');
expect(modal.present).toHaveBeenCalled();
});
});
这是错误日志:
应该启动错误模式 bdb 模态提供程序测试套件 预期的间谍存在已被调用。 在用户上下文。 (webpack:///src/providers/bdb-modal/bdb-modal.spec.ts:31:30
【问题讨论】:
-
modalCtrl.create('ModalErrorPage', {})返回什么? -
模态对象的一个实例
-
我很确定返回的是 Modal 的任何实例,但我需要真实的实例,如何获取它?
标签: angular unit-testing ionic-framework jasmine ionic3