@@ -233,7 +233,9 @@ function Login() {
233233 password: passwordInput .value ,
234234 }),
235235 })
236- .then (r => r .json ())
236+ .then ((r ) =>
237+ r .json ().then ((data ) => (r .ok ? data : Promise .reject (data)))
238+ )
237239 .then (
238240 user => {
239241 setState ({loading: false , resolved: true , error: null })
@@ -282,9 +284,10 @@ import {setupServer} from 'msw/node'
282284import {render , fireEvent , screen } from ' @testing-library/react'
283285import Login from ' ../login'
284286
287+ const fakeUserResponse = { token: ' fake_user_token' }
285288const server = setupServer (
286289 rest .post (' /api/login' , (req , res , ctx ) => {
287- return res (ctx .json ({token : ' fake_user_token ' } ))
290+ return res (ctx .json (fakeUserResponse ))
288291 }),
289292)
290293
@@ -322,7 +325,7 @@ test('allows the user to login successfully', async () => {
322325test (' handles server exceptions' , async () => {
323326 // mock the server error response for this test suite only.
324327 server .use (
325- rest .post (' /' , (req , res , ctx ) => {
328+ rest .post (' /api/login ' , (req , res , ctx ) => {
326329 return res (ctx .status (500 ), ctx .json ({message: ' Internal server error' }))
327330 }),
328331 )
0 commit comments