feat: add bundled OpenCode skills and refine module flow
Some checks failed
Electron E2E / Electron E2E (macos-latest) (push) Has been cancelled
Electron E2E / Electron E2E (ubuntu-latest) (push) Has been cancelled
Electron E2E / Electron E2E (windows-latest) (push) Has been cancelled

This commit is contained in:
inman
2026-08-14 18:15:55 +08:00
parent 88f9ee8708
commit c809002180
31 changed files with 1153 additions and 241 deletions

View File

@@ -321,24 +321,14 @@ describe('Sidebar project initialization flow', () => {
expect(screen.queryByText('课程路径')).not.toBeInTheDocument();
expect(screen.queryByText('伙伴广场')).not.toBeInTheDocument();
const moduleTrigger = screen.getByTestId('sidebar-module-switcher-trigger');
expect(moduleTrigger).toHaveAttribute('aria-expanded', 'false');
expect(moduleTrigger).toHaveAttribute('aria-label', '返回首页');
expect(moduleTrigger).toHaveClass('bg-transparent');
expect(moduleTrigger).toHaveClass('w-fit', 'justify-start', 'gap-1');
expect(moduleTrigger).toHaveClass('w-fit', 'justify-start', 'p-2');
expect(moduleTrigger).not.toHaveClass('bg-brand-soft');
expect(moduleTrigger).toHaveTextContent('编程 Code');
expect(screen.getByTestId('sidebar-module-switcher-menu')).toHaveAttribute('data-state', 'closed');
expect(screen.getByTestId('sidebar-module-programming')).toBeInTheDocument();
expect(screen.queryByTestId('sidebar-module-switcher-menu')).not.toBeInTheDocument();
fireEvent.click(screen.getByTestId('sidebar-module-switcher-trigger'));
const programmingModule = screen.getByTestId('sidebar-module-programming');
expect(programmingModule).toHaveTextContent('编程 Code');
expect(programmingModule).toHaveClass('bg-brand-soft');
expect(programmingModule.querySelector('svg')).not.toBeInTheDocument();
expect(screen.getByTestId('sidebar-module-painting')).toHaveTextContent('绘画 Canvas');
expect(screen.getByTestId('sidebar-module-painting')).not.toHaveClass('bg-brand-soft');
expect(screen.getByTestId('sidebar-module-programming')).not.toHaveTextContent('AI');
expect(screen.getByTestId('sidebar-module-painting')).not.toHaveTextContent('AI');
expect(screen.getByTestId('sidebar-module-programming')).not.toHaveTextContent('Makelore');
expect(screen.getByTestId('sidebar-module-painting')).not.toHaveTextContent('Makelore');
expect(navigateMock).toHaveBeenCalledWith('/module-select');
expect(screen.queryByTestId('sidebar-nav-image-canvas')).not.toBeInTheDocument();
expect(await screen.findByText(/暂无真实项目/)).toBeInTheDocument();
});