问题描述
import {DOCUMENT,Location} from '@angular/common';
....
export class BankSlipConfirmationComponent {
constructor(...
@Inject(DOCUMENT) private readonly document: Document) {
}
...
cancel() {
this.document.location.href = `${environment.urlMenu}`;
}
但我找不到如何在测试文件中注入文档,例如:
...
beforeEach(async(() => {
Testbed.configureTestingModule({
imports: [
LinkIconeBradescoModule,RouterTestingModule,ModalMobileBradescoModule
],declarations: [BankSlipConfirmationComponent,ConfirmationModalComponent],providers: [{provider: DOCUMENT,useValue: document},BankSlipInclusionService]
}).compileComponents();
}));
beforeEach(() => {
fixture = Testbed.createComponent(BankSlipConfirmationComponent);
router = Testbed.get(Router);
service = Testbed.get(BankSlipInclusionService);
service.change(getValidateBankSlipInclusion());
component = fixture.componentInstance;
fixture.detectChanges();
});
it('Test when user click in cancel button',() => {
component.cancel();
});
当我运行测试时,我收到了这条消息:
控制台错误
node_modules/jest-environment-jsdom-fifteen/node_modules/jsdom/lib/jsdom/virtual-console.js:29
Error: Not implemented: navigation (except hash changes)
at module.exports (C:\Desenvolvimento\Quero-Receber-PDPJ\pdpj-fed-account-receivables\node_modules\jest-environment-jsdom-fifteen\node_modules\jsdom\lib\jsdom\browser\not-implemented.js:9:17)
at navigateFetch (C:\Desenvolvimento\Quero-Receber-PDPJ\pdpj-fed-account-receivables\node_modules\jest-environment-jsdom-fifteen\node_modules\jsdom\lib\jsdom\living\window\navigation.js:77:3)
at exports.navigate (C:\Desenvolvimento\Quero-Receber-PDPJ\pdpj-fed-account-receivables\node_modules\jest-environment-jsdom-fifteen\node_modules\jsdom\lib\jsdom\living\window\navigation.js:55:3)
at LocationImpl._locationObjectNavigate (C:\Desenvolvimento\Quero-Receber-PDPJ\pdpj-fed-account-receivables\node_modules\jest-environment-jsdom-fifteen\node_modules\jsdom\lib\jsdom\living\window\Location-impl.js:29:5)
at LocationImpl._locationObjectSetterNavigate (C:\Desenvolvimento\Quero-Receber-PDPJ\pdpj-fed-account-receivables\node_modules\jest-environment-jsdom-fifteen\node_modules\jsdom\lib\jsdom\living\window\Location-impl.js:23:17)
at LocationImpl.set href [as href] (C:\Desenvolvimento\Quero-Receber-PDPJ\pdpj-fed-account-receivables\node_modules\jest-environment-jsdom-fifteen\node_modules\jsdom\lib\jsdom\living\window\Location-impl.js:45:10)
at Location.set href [as href] (C:\Desenvolvimento\Quero-Receber-PDPJ\pdpj-fed-account-receivables\node_modules\jest-environment-jsdom-fifteen\node_modules\jsdom\lib\jsdom\living\generated\Location.js:135:29)
at BankSlipConfirmationComponent.cancel (C:\Desenvolvimento\Quero-Receber-PDPJ\pdpj-fed-account-receivables\src\app\bank-slip-confirmation\bank-slip-confirmation.component.ts:568:33)
at C:\Desenvolvimento\Quero-Receber-PDPJ\pdpj-fed-account-receivables\test\bank-slip-confirmation.component.spec.ts:51:15
at ZoneDelegate.Object.<anonymous>.ZoneDelegate.invoke (C:\Desenvolvimento\Quero-Receber-PDPJ\pdpj-fed-account-receivables\node_modules\zone.js\dist\zone.js:391:26) undefined
但是,我不明白这是什么问题...
你能帮我吗?
谢谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)