import { beforeEach, describe, expect, it, vi } from 'vitest';
const { mockGetConversationDetail } = vi.hoisted(() => ({
    mockGetConversationDetail: vi.fn(),
}));
vi.mock('./utils.js', async () => {
    const actual = await vi.importActual('./utils.js');
    return {
        ...actual,
        getConversationDetail: mockGetConversationDetail,
    };
});
import { getRegistry } from '@jackwener/opencli/registry';
import './detail.js';
describe('doubao detail', () => {
    const detail = getRegistry().get('doubao/detail');
    beforeEach(() => {
        mockGetConversationDetail.mockReset();
    });
    it('returns meeting metadata even when the conversation has no chat messages', async () => {
        mockGetConversationDetail.mockResolvedValue({
            messages: [],
            meeting: {
                title: 'Weekly Sync',
                time: '2026-03-28 10:00',
            },
        });
        const result = await detail.func({}, { id: '1234567890' });
        expect(result).toEqual([
            { Role: 'Meeting', Text: 'Weekly Sync (2026-03-28 10:00)' },
        ]);
    });
    it('still returns an error row for a truly empty conversation', async () => {
        mockGetConversationDetail.mockResolvedValue({
            messages: [],
            meeting: null,
        });
        const result = await detail.func({}, { id: '1234567890' });
        expect(result).toEqual([
            { Role: 'System', Text: 'No messages found. Verify the conversation ID.' },
        ]);
    });
});
