import { render, screen } from '@testing-library/react' import { describe, expect, it, vi } from 'vitest' import { ToolType } from '../../../workflow/block-selector/types' import Empty from '../empty' vi.mock('@/hooks/use-theme', () => ({ default: () => ({ theme: 'light' }) })) describe('Empty', () => { it.each([ [ToolType.Custom, '/integrations/tools/api'], [ToolType.MCP, '/integrations/tools/mcp'], ])('links the %s empty state to its integration page', (type, href) => { render() expect(screen.getByRole('link')).toHaveAttribute('href', href) }) it('links the workflow guide to Studio and the documentation', () => { render() expect(screen.getByRole('link', { name: /goToStudio/i })).toHaveAttribute('href', '/apps') expect(screen.getByRole('link', { name: /learnMore/i })).toHaveAttribute( 'href', 'https://docs.dify.ai/en/self-host/use-dify/workspace/tools#workflow', ) }) it('does not offer installation navigation in an agent empty state', () => { render() expect(screen.queryByRole('link')).not.toBeInTheDocument() }) })