Skip to content

Bun 의 테스트 러너는 setSystemTime 함수를 사용하여 시스템 시간을 프로그래밍 방식으로 설정하는 것을 지원합니다.

ts
import { test, expect, setSystemTime } from "bun:test";

test("1999 년처럼 파티하기", () => {
  const date = new Date("1999-01-01T00:00:00.000Z");
  setSystemTime(date); // 이제 1999 년 1 월 1 일입니다

  const now = new Date();
  expect(now.getFullYear()).toBe(1999);
  expect(now.getMonth()).toBe(0);
  expect(now.getDate()).toBe(1);
});

setSystemTime 함수는 일반적으로 라이프사이클 후크 와 함께 사용하여 결정론적인 "가상 시계"로 테스트 환경을 구성하는 데 사용됩니다.

ts
import { test, expect, beforeAll, setSystemTime } from "bun:test";

beforeAll(() => {
  const date = new Date("1999-01-01T00:00:00.000Z");
  setSystemTime(date); // 이제 1999 년 1 월 1 일입니다
});

// 테스트...

시스템 시계를 실제 시간으로 재설정하려면 인수 없이 setSystemTime 을 호출하세요.

ts
import { test, expect, beforeAll, setSystemTime } from "bun:test";

setSystemTime(); // 실제 시간으로 재설정

Bun 테스트 러너로 모의에 대한 전체 문서는 문서 > 테스트 러너 > 날짜 및 시간 을 참조하세요.

Bun by www.bunjs.com.cn 편집