ngx-echarts icon indicating copy to clipboard operation
ngx-echarts copied to clipboard

Error when using change detection in component tests (jest)

Open homj opened this issue 1 year ago • 3 comments

Problem

The NgxEchartsDirective is not properly handling being destroyed when used in component tests in combination with explicit change detection calls

Observed behavior

When testing the usage of the echarts directive within a parent component and triggering change detection via fixture.detectChanges(), jest reports an error:

Error: 1 component threw errors during cleanup

Expected behavior

The directive should be destroyed without causing errors

Potential causes

I assume this is due to the use of ChangeFilter and subscriptions in ngOnChanges that are not being unsubscribed in ngOnDestroy

Technologies & Versions:

Angular: 15.0.1 ngx-echarts: 15.0.1 jest: 28.1.1

homj avatar Mar 16 '23 07:03 homj

Thanks for your feedback. I will look into this issue. If you could provide your test specs, it would be very helpful.

xieziyu avatar Mar 16 '23 08:03 xieziyu

Sure, here's a gist: https://gist.github.com/homj/24e2d3898d013013616304d1faff4315

homj avatar Mar 16 '23 08:03 homj

Hi @homj , Please try to upgrade [email protected]. The ChangeFilter subscriptions are unsubscribed now. But I'm not sure if it solves this issue, as I didn't reproduce this error using the spec in gist. Looking forward to your reply.

xieziyu avatar Mar 20 '23 03:03 xieziyu