Я закончил тем, что использовал библиотеку глубоких объектов diff, вот мой пример - я проверяю, что нет никаких других изменений, кроме электронной почты, в двух случаях:
import { updatedDiff, deletedDiff, addedDiff } from 'deep-object-diff';
.....
it('updates customer email', () => {
const before = store.getState();
store.dispatch(updateStoredCustomerDetails({ email: 'blabla@blabla.com' }));
const after = store.getState();
expect(addedDiff(before, after)).toEqual({});
expect(deletedDiff(before, after)).toEqual({});
expect(updatedDiff(before, after)).toEqual({
login: { loginToken: { email: 'blabla@blabla.com' } },
customer: { email: 'blabla@blabla.com' },
});
});