강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của joyoon7290569
joyoon7290569

câu hỏi đã được viết

Máy chủ API NodeJS được tạo thông qua phát triển dựa trên thử nghiệm (TDD)

강의 중 describe POST 쪽 질문입니다.

Viết

·

223

0

질문이 2개가 있습니다.

 

질문1)

강의에서는,

describe('POST /users 는', () => {
    before(() => models.sequelize.sync({force: true}));
    const users = [{name: 'alice'}, {name: 'bek'}, {name: 'chris'}];
    before(() => models.User.bulkCreate(users));

이렇게 하셔서 it 실행전에 before 에서 db 상태를 재정의해주셨는데요,

저는 위 부분을 before 하나로 합쳤는데 에러가 발생합니다.

똑같은 코드라 생각되는데, 어느 부분에서 차이가 있는건가요?

describe('POST /users 는', () => {
    before(() => {
        models.sequelize.sync({force: true});
        const users = [{name: 'alice'}, {name: 'bek'}, {name: 'chris'}];
        models.User.bulkCreate(users)
    })

 

 

질문2)

before(() => { models.sequelize.sync({force: true}) }) // 에러
before(() => models.sequelize.sync({force: true})) // 정상 실행

중괄호 유무에 따라 왜 차이가 있는건가요?

expressnodejstddrest-api

Câu trả lời 1

0

jeonghwan님의 프로필 이미지
jeonghwan
Người chia sẻ kiến thức

sync()와 bulkCreate() 함수가 비동기 동작이라서 그렇습니다.

이렇게 한번 작성해 보시겠어요?

before(async ()=> {
    await models.sequelize.sync({force: true})
    models.User.bulkCreate(users)
})
Yoon-Gi Jo님의 프로필 이미지
Yoon-Gi Jo
Người đặt câu hỏi

음 답변 주신 코드로 해봤더니 정상 작동이 됩니다.

그렇지만 async/await 이 어떤 키워드인지는 잘 모르겠네요... 공부를 해야겠습니다.

Hình ảnh hồ sơ của joyoon7290569
joyoon7290569

câu hỏi đã được viết

Đặt câu hỏi