feat(web): make instance detail the operations workbench

This commit is contained in:
chick
2026-07-19 14:05:06 +08:00
parent f7d69a0fa7
commit 75682b8134
8 changed files with 663 additions and 140 deletions
+6 -5
View File
@@ -162,9 +162,10 @@ describe('React AppShell and Fleet vertical slice', () => {
expect(within(card).getByText(/这是一条用于聚合页展示/)).toBeTruthy();
expect(within(card).getByText(/2026/)).toBeTruthy();
expect(within(card).queryByText('能力未知')).toBeNull();
expect(within(card).getByRole('link', { name: '查看 Bravo 的短信' }).getAttribute('href')).toBe(
'/instances/bravo/messages',
);
expect(
within(card).getByRole('link', { name: '打开 Bravo 实例仪表盘' }).getAttribute('href'),
).toBe('/instances/bravo/overview');
expect(within(card).queryByRole('link', { name: /查看.*短信/ })).toBeNull();
expect(within(card).getByRole('link', { name: '编辑 Bravo' }).getAttribute('href')).toBe(
'/settings/instances/bravo',
);
@@ -241,7 +242,7 @@ describe('React AppShell and Fleet vertical slice', () => {
expect(screen.getByRole('status').textContent).toContain('正在加载实例');
expect(await screen.findByText('Bravo')).toBeTruthy();
expect(screen.getByRole('heading', { name: '设备信息' })).toBeTruthy();
expect(screen.getByRole('heading', { name: '实例仪表盘' })).toBeTruthy();
expect(screen.getByRole('link', { name: '编辑实例' }).getAttribute('href')).toBe(
'/settings/instances/bravo',
);
@@ -352,7 +353,7 @@ describe('React AppShell and Fleet vertical slice', () => {
const { rerender } = render(
<AppShell pathname="/instances/owner/messages" instance={instance} />,
);
expect(screen.getByRole('heading', { name: '短信' })).toBeTruthy();
expect(screen.getByRole('heading', { name: '短信管理' })).toBeTruthy();
expect(screen.getByText('Owner modem')).toBeTruthy();
expect(screen.getByRole('link', { name: '打开源站' }).getAttribute('href')).toBe(
'https://owner.example',