feat(chat): simplify teacher pane and color follow-up cards
This commit is contained in:
1 parent
80c9c0d683
commit
862477f9d4
8 files changed
+51
-38
No files matched your search
@@ -77,7 +77,7 @@ describe('teacher presence and periodic guidance', () => {
|
||||
expect(api.checkIn).not.toHaveBeenCalled();
|
||||
await act(async () => fireEvent.click(experience));
|
||||
expect(screen.queryByTestId('teacher-introduction')).not.toBeInTheDocument();
|
||||
expect(screen.getByRole('heading', { name: '体验朋友' })).toBeVisible();
|
||||
expect(screen.getByRole('complementary', { name: '体验朋友咨询' })).toBeVisible();
|
||||
// The first move may arrive only after the click when crossing a tooltip's
|
||||
// grace area. It must not reopen the introduction beneath the pointer.
|
||||
fireEvent.pointerMove(experience, { pointerType: 'mouse' });
|
||||
@@ -145,7 +145,7 @@ describe('teacher presence and periodic guidance', () => {
|
||||
expect(second).toHaveAttribute('src', b.definition.icon_url);
|
||||
await act(async () => fireEvent.click(screen.getByRole('button', { name: '与另一个智能体聊天' })));
|
||||
const images = view.container.querySelectorAll('[data-testid="teacher-chat-panel"] img');
|
||||
expect(images).toHaveLength(2);
|
||||
expect(images).toHaveLength(1);
|
||||
for (const img of images) expect(img).toHaveAttribute('src', b.definition.icon_url);
|
||||
});
|
||||
|
||||
@@ -160,7 +160,7 @@ describe('teacher presence and periodic guidance', () => {
|
||||
expect(screen.getByRole('button', { name: '与体验朋友聊天' })).toBeVisible();
|
||||
await act(async () => fireEvent.click(screen.getByRole('button', { name: '与体验朋友聊天' })));
|
||||
expect(screen.queryByLabelText('新话题使用的智能体')).not.toBeInTheDocument();
|
||||
expect(screen.getByRole('heading', { name: '体验朋友' })).toBeVisible();
|
||||
expect(screen.getByRole('complementary', { name: '体验朋友咨询' })).toBeVisible();
|
||||
fireEvent.change(screen.getByLabelText('向智能体提问'), { target: { value: '体验的草稿' } });
|
||||
await act(async () => fireEvent.click(screen.getByRole('button', { name: '与方法老师聊天' })));
|
||||
expect(screen.getByLabelText('向智能体提问')).toHaveValue('');
|
||||
@@ -192,13 +192,13 @@ describe('teacher presence and periodic guidance', () => {
|
||||
await mount();
|
||||
await act(async () => fireEvent.click(screen.getByRole('button', { name: '与方法老师聊天' })));
|
||||
expect(api.read).toHaveBeenCalledWith('project', oldA.id);
|
||||
expect(screen.getByRole('heading', { name: '方法老师' })).toBeVisible();
|
||||
expect(screen.getByRole('complementary', { name: '方法老师咨询' })).toBeVisible();
|
||||
fireEvent.change(screen.getByLabelText('向智能体提问'), { target: { value: '继续原来的讨论' } });
|
||||
await act(async () => fireEvent.click(screen.getByRole('button', { name: '提问', exact: true })));
|
||||
expect(api.send.mock.calls[0][1]).toBe(oldA.id);
|
||||
expect(api.create).not.toHaveBeenCalled();
|
||||
await act(async () => fireEvent.click(screen.getByRole('button', { name: '与体验朋友聊天' })));
|
||||
expect(screen.getByRole('heading', { name: '体验朋友' })).toBeVisible();
|
||||
expect(screen.getByRole('complementary', { name: '体验朋友咨询' })).toBeVisible();
|
||||
expect(api.read).toHaveBeenCalledWith('project', oldB.id);
|
||||
});
|
||||
|
||||
@@ -213,7 +213,7 @@ describe('teacher presence and periodic guidance', () => {
|
||||
await mount();
|
||||
await act(async () => fireEvent.click(screen.getByRole('button', { name: '与体验朋友聊天' })));
|
||||
await act(async () => resolve(old));
|
||||
expect(screen.getByRole('heading', { name: '体验朋友' })).toBeVisible();
|
||||
expect(screen.getByRole('complementary', { name: '体验朋友咨询' })).toBeVisible();
|
||||
expect(screen.getByRole('button', { name: '与体验朋友聊天' })).toHaveAttribute('aria-pressed', 'true');
|
||||
expect(api.read).toHaveBeenCalledWith('project', old.id, false);
|
||||
expect(api.send).not.toHaveBeenCalled();
|
||||
|
||||
Reference in new issue
Block a user