收口 Makelore 客户端变更
This commit is contained in:
@@ -234,7 +234,7 @@ describe('ChatMessage current-view controls', () => {
|
||||
/>,
|
||||
);
|
||||
|
||||
expect(screen.queryByText(/README\.md/)).not.toBeInTheDocument();
|
||||
expect(screen.getByText(/README\.md/).closest('[data-state]')).toHaveAttribute('data-state', 'closed');
|
||||
fireEvent.click(screen.getByRole('button', { name: /read/i }));
|
||||
expect(onToolExpandedChange).toHaveBeenCalledWith(toolId, true);
|
||||
|
||||
@@ -323,6 +323,43 @@ describe('ChatMessage LaTeX rendering', () => {
|
||||
expect(screen.getByTestId('chat-message-bubble-assistant')).toHaveClass('pt-1', 'pb-3');
|
||||
});
|
||||
|
||||
it('aligns an embedded execution-trace reply without reserving a duplicate avatar', () => {
|
||||
const message: RawMessage = { role: 'assistant', content: '最终回答。' };
|
||||
render(
|
||||
<ChatMessage
|
||||
message={message}
|
||||
assistantAvatarSrc="/avatar-16.png"
|
||||
assistantAvatarMode="embedded-trace"
|
||||
/>,
|
||||
);
|
||||
|
||||
expect(screen.queryByTestId('chat-message-avatar-assistant')).not.toBeInTheDocument();
|
||||
expect(screen.queryByTestId('chat-message-avatar-reserved')).not.toBeInTheDocument();
|
||||
expect(screen.getByTestId('chat-message-bubble-assistant').parentElement).not.toHaveClass('pl-9');
|
||||
});
|
||||
|
||||
it('marks assistant markdown with compact paragraph spacing', () => {
|
||||
render(
|
||||
<ChatMessage
|
||||
message={{ role: 'assistant', content: '第一段。\n\n第二段。' }}
|
||||
/>,
|
||||
);
|
||||
|
||||
expect(screen.getByTestId('chat-message-bubble-assistant').querySelector('.chat-assistant-message-markdown')).toHaveClass('prose', 'prose-sm');
|
||||
});
|
||||
|
||||
it('does not render markdown thematic breaks inside assistant replies', () => {
|
||||
const { container } = render(
|
||||
<ChatMessage
|
||||
message={{ role: 'assistant', content: '第一段。\n\n---\n\n第二段。' }}
|
||||
/>,
|
||||
);
|
||||
|
||||
expect(container.querySelector('hr')).not.toBeInTheDocument();
|
||||
expect(screen.getByText('第一段。')).toBeInTheDocument();
|
||||
expect(screen.getByText('第二段。')).toBeInTheDocument();
|
||||
});
|
||||
|
||||
it('renders inline `$...$` math with KaTeX', () => {
|
||||
const message: RawMessage = {
|
||||
role: 'assistant',
|
||||
|
||||
Reference in New Issue
Block a user