-
Notifications
You must be signed in to change notification settings - Fork 2.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
AutoCleanedWeakCache causes failure when running tests in fakeAsync zone #11790
AutoCleanedWeakCache causes failure when running tests in fakeAsync zone #11790
Comments
Hi @vz-tl 👋 Thanks for the report here. I was able to reproduce this by wrapping this test in the The To unblock your upgrade to 3.9, you can call flush with I hope that explanation is helpful - I'll leave this open for now in case anyone else on the team has something to add. |
… full Fixes #11790 This prevents timeouts from being set when they are not necessary.
For background - the purpose of this timeout is to batch cleanups of "memoized cache" cleans. That said, until now we scheduled these always, not only when the cache was full. I've opened #11792. Since your tests are unlikely to fill these caches, that should fix it for your usecase. Could you please test the PR release and report back if it fixes your problem? npm i @apollo/client@0.0.0-pr-11792-20240419093048 |
@phryneas , with your PR release tests are now working flawlessly! Thx a lot, @phryneas, @alessbell! You are awesome! Looking forward to pull in the fix release! |
… full (#11792) * AutoCleanedCache: only schedule batched cache cleanup if the cache is full Fixes #11790 This prevents timeouts from being set when they are not necessary. * update size limit * trigger CI * Clean up Prettier, Size-limit, and Api-Extractor --------- Co-authored-by: phryneas <phryneas@users.noreply.github.com>
Do you have any feedback for the maintainers? Please tell us by taking a one-minute survey. Your responses will help us understand Apollo Client usage and allow us to serve you better. |
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
Issue Description
Issue occurs in Angular 17 project while executing a Jest test running in
fakeAsync
zone, imported from@angular/core/testing
(pseudo-code):Result: test fails with
Error: 2 timer(s) still in the queue.
Packages:
Offending code is located in utilities.cjs :
The issue is unrelated to
apollo-angular
, this package is just being used as a wrapper around ApolloClient (ApolloTestingController used in the test is part of it).Downgrading
@apollo/client
to v3.8.10, solves the issue!Link to Reproduction
Reproduction Steps
No response
@apollo/client
version3.9.0+
The text was updated successfully, but these errors were encountered: