본문 바로가기

Project/TIL

20.03.25 ShareBook TIL

유저 로그인 test 작성

데이터베이스에 들어있는 유저와 비교하여 같은 값이면 status 200을 보낸다.

 test('should respond user id to signin data', async done => {
      const response = await request(app)
        .post('/users/signin')
        .send({
          email: 'test_123@gmail.com',
          password: 'test_password',
        });
      expect(response.status).toEqual(200);
      done();
    });

 

데이터베이스에 들어있지 않은 유저는 에러를 출력한다.

test('should respond NOT FOUND with unvalid user', async done => {
      const response = await request(app)
        .post('/users/signin')
        .send({
          email: 'foo@gmail.com',
          password: '123',
        });
      expect(response.text).toEqual('회원이 아닙니다');
      done();
    });

 

Post/users/signin으로 테스트를 구분하기 쉽게 묶어둔다.

describe('POST /user/signin', () => {
    test('should respond user id to signin data', async done => {
      const response = await request(app)
        .post('/users/signin')
        .send({
          email: 'test_123@gmail.com',
          password: 'test_password',
        });
      expect(response.status).toEqual(200);
      done();
    });

    test('should respond NOT FOUND with unvalid user', async done => {
      const response = await request(app)
        .post('/users/signin')
        .send({
          email: 'foo@gmail.com',
          password: '123',
        });
      expect(response.text).toEqual('회원이 아닙니다');
      done();
    });
  });

 

'Project > TIL' 카테고리의 다른 글

20.03.27 ShareBook TIL  (0) 2020.03.27
20.03.26 ShareBook TIL  (0) 2020.03.26
20.03.24 ShareBook TIL  (0) 2020.03.25
20.03.23 ShareBook TIL  (0) 2020.03.24
20.03.22 ShareBook TIL  (0) 2020.03.22