inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Slack 클론 코딩[백엔드 with NestJS + TypeORM]

유닛 테스팅 하기

QueryBuilder Mocking 예제를 알 수 있을까요?

528

jhkim

작성한 질문수 2

0

구글링을해봐도 도저히 나오지 않아 QueryBuilder를 어떻게 모킹해야할 지 모르겠습니다..

예) await getConnection()

      .createQueryBuilder()
      .update(User)
      .set({ userId, name, memo })
      .where(
        'projectId = :projectId
and id = :id
and authority = :authority',
        { projectId, id, authority: 0 },
      )
      .execute();

를 모킹하려고 하는데 혹시 MockClass 내부에서 어떻게 해당 로직을 구현해야 할까요?

nodejs express NestJS TypeORM

답변 1

2

제로초(조현영)

저는 보통 getConnection으로 출발하기보다는 this.userRepository.createQueryBuilder로 출발하는데요.

그런 경우에는 mockUserRepository가 정의되어있을 것이고, test 내부에서 

mockUserRepository.createQueryBuilder = jest.fn(() => ({
  update() { return this },
  set() { return this },
  where() { return this },
  execute() { return 모킹하길원하는값 }
}));

한 뒤

this.머시기Service.메서드(); 

이런 식으로 호출해서 사용합니다. getConnection도 mockConnection으로부터 출발해도 될 것 같네요.

강의자료는 어디서 다운받나요?

0

141

4

질문 있습니다.

0

315

3

코드 편집기 확장 프로그램

0

220

2

(질문)비밀 저장소에 접근하기 위한 인증 정보는 로컬 .env에 저장하는지?

0

161

2

(질문)외부 저장소를 통한 환경변수 불러오기 비동기 질문

0

177

3

로그인을 해도 LoggedInGuard쪽에서 false값이 나옵니다.

0

161

2

로그인방법이 고민됩니다.

0

197

2

yarn seed 명령어 실행 시 데이터 삽입 안됨

0

305

4

yarn run db:create 시에 발생하는 데코레이터 오류

0

247

2

npm run db:create 시에 발생하는 decorating 오류

0

245

2

RxJS 디버깅 질문 있습니다.

0

198

3

CacheManager에 대해 질문 있습니다.

0

184

2

로깅은 어떻게 하는게 효율적일까요?

0

236

1

CORS 질문 있습니다.

0

425

2

쿠키 옵션에 대해서 질문 있습니다.

0

188

2

로그아웃 요청이 403 forbidden 에러가 나는데 왜그런걸까요??

0

458

1

401 unauthorized문제

0

304

1

가드의 장점에 대해서 질문이 있습니다.

0

232

1

로그 관리에 대해 질문 있습니다.

0

254

2

CORS 에러 질문 있습니다.

0

328

2

배포 환경 DB 연결 질문 있습니다.

0

417

2

socket io 미 연결 문제 (nest & flutter)

1

1166

3

no elements in sequence 에러 관해서 질문이 있습니다.

0

462

1

start:dev-backup으로 돌리면 핫 리로딩이 되요 정상인가요?

0

323

1