[Copy Stack] indexedDB 테스트를 위한 의존성

dev2820·2022년 12월 21일
0

프로젝트: Copy Stack

목록 보기
16/28

fake-indexeddb 설치

https://www.npmjs.com/package/fake-indexeddb

vite 버전과 충돌을 일으켜서 --legacy-peer-deps 옵션을 주어 설치했습니다.

npm install --save-dev fake-indexeddb --legacy-peer-deps

사용

test 파일 상단에 import "fake-indexeddb/auto를 추가하면 됩니다.

간단하게 indexedDB를 만들어 가져오는 유틸 함수를 만들고 테스트를 작성해 봅시다.

export default async function getIDB(name: string): Promise<IDBDatabase> {
  return new Promise((resolve, reject) => {
    const request = indexedDB.open(name);
    request.onsuccess = () => {
      resolve(request.result);
    };
    request.onerror = () => {
      reject(null);
    };
  });
}
import "fake-indexeddb/auto";
import getIDB from "@/utils/getIDB";
import { test, expect } from "@jest/globals";

test("get DB", async () => {
  const db = await getIDB("test");
  expect(db).toBeInstanceOf(IDBDatabase);
});

vscode jest 익스텐션으로 수행한 테스트가 잘 동작하는 것을 확인할 수 있습니다.

profile
공부,번역하고 정리하는 곳

0개의 댓글