import { describe, it, expect, vi, beforeEach } from 'vitest'; import { render, waitFor } from '@testing-library/react'; vi.mock('@/services/response', () => ({ request: { getAppointmentSlots: vi.fn(() => Promise.resolve({ data: { sessions: [] } })), getServiceSlots: vi.fn(() => Promise.resolve({ data: { start_times: [] } })), getResourceSlots: vi.fn(() => Promise.resolve({ data: { start_times: [] } })), getMonthAvailability: vi.fn(() => Promise.resolve({ data: {} })), getResourceMonthAvailability: vi.fn(() => Promise.resolve({ data: {} })), }, })); vi.mock('next/navigation', () => ({ useParams: () => ({ doctorId: 'doc-1' }) })); vi.mock('@/components/common/InlineJalaliMonth', () => ({ default: () =>
})); vi.mock('./dateTime/hours', () => ({ default: () => })); vi.mock('./dateTime/SendAppo', () => ({ default: () => })); vi.mock('../Tabs', () => ({ default: () => })); import { request } from '@/services/response'; import DateTime from './dateTime'; import DatePicker from './datePicker'; // نیمهشبِ فردا — تا «زمانِ گذشته» جریان را کوتاه نکند. const TOMORROW = Math.floor(new Date(new Date().setHours(24, 0, 0, 0)).getTime() / 1000); describe('DateTime — انتخاب اندپوینت اسلات', () => { beforeEach(() => vi.clearAllMocks()); it('بدون منبع و بدون حالت سرویسی → اسلات پزشک', async () => { render(