1 min read
(jest) Sequelize db (데모 코드)
# Dependency
npm i sqlite3 sequelize sequelize-typescript jest ts-jest typescript @types/jest @types/sequelize --save-dev
describe('Whatever model test', () => {
    let db: Sequelize = null

    beforeEach(async () => {
        db = new Sequelize(`sqlite::memory:`, {logging: false});
        db.addModels([
            ModelA,
            ModelB
        ])
        await db.sync({ force: true });
    });

    afterEach(async () => {
        if (db) {
            await db.close()
            db = null
        }
    })

    const repository = new WhateverRepository()

    it('should return 1 row', async () => {
        // given
        const DUMMY_ID = 'DUMMY_ID'

        // when
        await repository.save({
            idd: DUMMY_ID,
        })

        // then
        expect(await repository.findAll()).toHaveLength(1)
    })
})