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); // أصبح الآن 1 يناير 1999

  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); // أصبح الآن 1 يناير 1999
});

// الاختبارات...

لإعادة ضبط ساعة النظام إلى الوقت الفعلي، استدعِ setSystemTime بدون وسيطات.

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

setSystemTime(); // إعادة الضبط إلى الوقت الفعلي

راجع الوثائق > مُشغل الاختبارات > التاريخ والوقت للحصول على الوثائق الكاملة للمحاكاة مع مُشغل اختبارات Bun.

Bun بواسطة www.bunjs.com.cn تحرير