dify/web/app/components/base/divider/index.spec.tsx
Stephen Zhou eabdc5f0eb
Some checks are pending
autofix.ci / autofix (push) Waiting to run
Build and Push API & Web / build (api, DIFY_API_IMAGE_NAME, linux/amd64, build-api-amd64) (push) Waiting to run
Build and Push API & Web / build (api, DIFY_API_IMAGE_NAME, linux/arm64, build-api-arm64) (push) Waiting to run
Build and Push API & Web / build (web, DIFY_WEB_IMAGE_NAME, linux/amd64, build-web-amd64) (push) Waiting to run
Build and Push API & Web / build (web, DIFY_WEB_IMAGE_NAME, linux/arm64, build-web-arm64) (push) Waiting to run
Build and Push API & Web / create-manifest (api, DIFY_API_IMAGE_NAME, merge-api-images) (push) Blocked by required conditions
Build and Push API & Web / create-manifest (web, DIFY_WEB_IMAGE_NAME, merge-web-images) (push) Blocked by required conditions
Main CI Pipeline / Check Changed Files (push) Waiting to run
Main CI Pipeline / API Tests (push) Blocked by required conditions
Main CI Pipeline / Web Tests (push) Blocked by required conditions
Main CI Pipeline / Style Check (push) Waiting to run
Main CI Pipeline / VDB Tests (push) Blocked by required conditions
Main CI Pipeline / DB Migration Test (push) Blocked by required conditions
refactor(web): migrate to Vitest and esm (#29974)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: yyh <yuanyouhuilyz@gmail.com>
2025-12-22 16:35:22 +08:00

55 lines
2.3 KiB
TypeScript

import { render } from '@testing-library/react'
import Divider from './index'
describe('Divider', () => {
it('renders with default props', () => {
const { container } = render(<Divider />)
const divider = container.firstChild as HTMLElement
expect(divider).toHaveClass('w-full h-[0.5px] my-2')
expect(divider).toHaveClass('bg-divider-regular')
})
it('renders horizontal solid divider correctly', () => {
const { container } = render(<Divider type="horizontal" bgStyle="solid" />)
const divider = container.firstChild as HTMLElement
expect(divider).toHaveClass('w-full h-[0.5px] my-2')
expect(divider).toHaveClass('bg-divider-regular')
})
it('renders vertical solid divider correctly', () => {
const { container } = render(<Divider type="vertical" bgStyle="solid" />)
const divider = container.firstChild as HTMLElement
expect(divider).toHaveClass('w-[1px] h-full mx-2')
expect(divider).toHaveClass('bg-divider-regular')
})
it('renders horizontal gradient divider correctly', () => {
const { container } = render(<Divider type="horizontal" bgStyle="gradient" />)
const divider = container.firstChild as HTMLElement
expect(divider).toHaveClass('w-full h-[0.5px] my-2')
expect(divider).toHaveClass('bg-gradient-to-r from-divider-regular to-background-gradient-mask-transparent')
})
it('renders vertical gradient divider correctly', () => {
const { container } = render(<Divider type="vertical" bgStyle="gradient" />)
const divider = container.firstChild as HTMLElement
expect(divider).toHaveClass('w-[1px] h-full mx-2')
expect(divider).toHaveClass('bg-gradient-to-r from-divider-regular to-background-gradient-mask-transparent')
})
it('applies custom className correctly', () => {
const customClass = 'test-custom-class'
const { container } = render(<Divider className={customClass} />)
const divider = container.firstChild as HTMLElement
expect(divider).toHaveClass(customClass)
expect(divider).toHaveClass('w-full h-[0.5px] my-2')
})
it('applies custom style correctly', () => {
const customStyle = { margin: '10px' }
const { container } = render(<Divider style={customStyle} />)
const divider = container.firstChild as HTMLElement
expect(divider).toHaveStyle('margin: 10px')
})
})