子组件订阅问题单元测试

时间:2021-05-22 11:07:32

标签: angular unit-testing karma-jasmine

我正在尝试为具有子组件的组件编写单元测试。我已经使用了 NO_ERRORS_SCHEMA ,但仍然出现以下错误。

失败:无法读取未定义的属性“订阅”

我从子组件收到此错误。 以下是我的代码

父组件

it('should create table', fakeAsync(() => {
        const employeeService = TestBed.get( EmployeeService);
         employeeService.getDetails.and.callFake(() => Promise.resolve([{
            Name: "Test123",
            Status: "Retired",
            Age: "60",
            StartDate: "2018-05-20T04:18:14.123",
            EndDate: "2020-08-20T06:09:10.163",
        }]));
        let table = fixture.nativeElement.querySelectorAll('table');
        expect(table.length).toBe(1);
        fixture.destroy();
        flush();
    }));

子组件

ngOnInit() {

        this.employeeService.logInButtonDisabled.subscribe((data: any) => { this.isLogDisabled = data; });
        this.employeeService.registerButtonDisabled.subscribe((data: any) => { this.isRegisterDisabled = data; });
        });

  }

谁能指导我如何解决这个问题?

提前致谢。

0 个答案:

没有答案