/* @vitest-environment jsdom */ import { render, screen } from '@testing-library/react'; import { describe, expect, test } from 'vitest'; import { PlatformAsyncStatePanel } from './PlatformAsyncStatePanel'; describe('PlatformAsyncStatePanel', () => { test('prefers error state over loading and content', () => { render( 出错了} isLoading loadingState={
读取中
} >
内容
, ); expect(screen.getByText('出错了')).toBeTruthy(); expect(screen.queryByText('读取中')).toBeNull(); expect(screen.queryByText('内容')).toBeNull(); }); test('renders loading state before empty state', () => { render( 读取中} emptyState={
暂无内容
} >
内容
, ); expect(screen.getByText('读取中')).toBeTruthy(); expect(screen.queryByText('暂无内容')).toBeNull(); }); test('renders empty state when requested', () => { render( 暂无内容}>
内容
, ); expect(screen.getByText('暂无内容')).toBeTruthy(); expect(screen.queryByText('内容')).toBeNull(); }); test('falls back to content when no async state is active', () => { render(
内容
, ); expect(screen.getByText('内容')).toBeTruthy(); }); });