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()
})
})