diff --git a/src/utils/auth/login.test.js b/src/utils/auth/login.test.js index b37f9f9..aa20121 100644 --- a/src/utils/auth/login.test.js +++ b/src/utils/auth/login.test.js @@ -42,15 +42,28 @@ describe('login()', () => { }); }); - it('retourne une erreur quand la réponse HTTP est mauvaise', async () => { + it('retourne un objet avec status et erreurs quand la réponse HTTP est mauvaise', async () => { global.fetch.mockResolvedValue({ ok: false, - status: 401 + status: 401, + json: async () => ({ message: 'Unauthorized' }) }); const result = await login('x', 'y'); - expect(result).toBeInstanceOf(Error); - expect(result.message).toBe('Erreur HTTP 401'); + expect(result).toEqual({ + status: 401, + errors: 'Unauthorized' + }); + }); + + it('retourne un objet avec status 500 en cas d’exception', async () => { + global.fetch.mockImplementation(() => { throw new Error('Network Error') }); + + const result = await login('x', 'y'); + + expect(result.status).toBe(500); + expect(result.error).toBeInstanceOf(Error); + expect(result.error.message).toBe('Network Error'); }); });