I had a similar problem lately.
And I would suggest taking a look at the difference between clearAllMocks() and resetAllMocks()
clearAllMocks is useful when you want to ensure that the call history of mocks is clean between tests, but you want to retain any mocked return values or implementations.
resetAllMocks is useful when you want a complete reset, effectively returning all mocks to their initial, unconfigured state.
In my case, I was using mockResolvedValueOnce, and it affected the next test. clearAllMocks was of no help at all, but resetAllMocks solved the problem**.**