/* @vitest-environment jsdom */ import { render, screen } from '@testing-library/react'; import { expect, test } from 'vitest'; import { PlatformFieldLabel } from './PlatformFieldLabel'; test('renders compact field label by default', () => { render(作品名称); const label = screen.getByText('作品名称'); expect(label.className).toContain('text-xs'); expect(label.className).toContain('text-[var(--platform-text-soft)]'); }); test('renders section label with tracking', () => { render(作品信息); const label = screen.getByText('作品信息'); expect(label.className).toContain('tracking-[0.18em]'); expect(label.className).toContain('font-bold'); }); test('renders form label and keeps local classes', () => { render( 一句话创作 , ); const label = screen.getByText('一句话创作'); expect(label.className).toContain('mb-2'); expect(label.className).toContain('font-black'); expect(label.className).toContain('mt-1'); }); test('renders inline form label without block spacing', () => { render( 关卡数 , ); const label = screen.getByText('关卡数'); expect(label.className).toContain('inline-flex'); expect(label.className).toContain('text-sm'); expect(label.className).toContain('font-bold'); expect(label.className).toContain('shrink-0'); expect(label.className).not.toContain('mb-2'); }); test('renders pill and accent pill labels', () => { render( <> 作品标题 主题/场景描述 , ); expect(screen.getByText('作品标题').className).toContain('rounded-full'); expect(screen.getByText('主题/场景描述').className).toContain('bg-rose-50'); });