I am unable to test getter and setter functions in Angular 5 using Karma. Any ideas as to where I'm going wrong?
The value is set and then the test waits a short duration for the setter function to resolve before calling the getter function. Here is the code:
service.ts
set header(h: string) {
this.zone.run(() => {
this._header = h;
});
}
get header(): string {
return this._header;
}
test.ts
before(() => {
service = new Service()
});
it('updates header', (done) => {
const header = 'test header';
service.header = header;
// Give header time to update
return Promise.delay(200)
.then(() => {
expect(service.header).to.equal(header);
})
});
I would expect the assertion to resolve successfully however I get an error
AssertionError: expected undefined to equal 'test header'