From cdecb584d5dfb517b4a99a46306129420bcd3636 Mon Sep 17 00:00:00 2001 From: mesalogo Date: Wed, 2 Sep 2026 21:47:18 +0800 Subject: [PATCH] test: wait for settings before appearance assertions The Linux CI run could query the Appearance tab before the lazy Settings route finished loading. Appearance tests now wait for the Settings heading before interacting with its tabs, matching the stable navigation pattern used elsewhere. --- src/renderer/src/App.test.tsx | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/renderer/src/App.test.tsx b/src/renderer/src/App.test.tsx index ed5f7af0..2575a597 100644 --- a/src/renderer/src/App.test.tsx +++ b/src/renderer/src/App.test.tsx @@ -1892,8 +1892,9 @@ describe('App', () => { name: /本地工作区/u }) ) + await screen.findByRole('heading', { name: '设置中心' }) fireEvent.click( - await screen.findByRole('tab', { name: '外观' }) + screen.getByRole('tab', { name: '外观' }) ) fireEvent.change(screen.getByLabelText('品牌名称'), { target: { value: '研发伙伴' } @@ -2179,8 +2180,9 @@ describe('App', () => { name: /本地工作区/u }) ) + await screen.findByRole('heading', { name: '设置中心' }) fireEvent.click( - await screen.findByRole('tab', { name: '外观' }) + screen.getByRole('tab', { name: '外观' }) ) const projectsList = vi.mocked(api.projects.list) const expertsList = vi.mocked(api.experts.list) @@ -5747,6 +5749,7 @@ describe('App', () => { render() fireEvent.click(await screen.findByText('本地工作区')) + await screen.findByRole('heading', { name: '设置中心' }) fireEvent.click(screen.getByRole('tab', { name: '外观' })) fireEvent.click(screen.getByRole('radio', { name: /暗色/u }))