refactor(inbox): 侧边栏素材列表改为轻量 Flex 布局 — Card→Flex, 新增状态 Tag, hover 切换删除按钮, 左侧竖线选中态
This commit is contained in:
@@ -18,7 +18,7 @@ const MOCK_MATERIAL: Material = {
|
||||
};
|
||||
|
||||
describe("MaterialCard", () => {
|
||||
test("渲染素材描述和创建时间", () => {
|
||||
test("渲染素材描述、时间和状态标签", () => {
|
||||
renderWithProviders(
|
||||
createElement(MaterialCard, {
|
||||
material: MOCK_MATERIAL,
|
||||
@@ -29,6 +29,7 @@ describe("MaterialCard", () => {
|
||||
);
|
||||
expect(screen.getByText("测试素材描述")).not.toBeNull();
|
||||
expect(screen.getByText("今天")).not.toBeNull();
|
||||
expect(screen.getByText("待审核")).not.toBeNull();
|
||||
});
|
||||
|
||||
test("点击卡片触发 onSelect", () => {
|
||||
@@ -41,8 +42,8 @@ describe("MaterialCard", () => {
|
||||
selected: false,
|
||||
}),
|
||||
);
|
||||
const card = screen.getByText("测试素材描述").closest(".ant-card")!;
|
||||
fireEvent.click(card);
|
||||
const item = screen.getByText("测试素材描述").closest(".material-list-item")!;
|
||||
fireEvent.click(item);
|
||||
expect(onSelect).toHaveBeenCalledTimes(1);
|
||||
});
|
||||
|
||||
@@ -71,7 +72,7 @@ describe("MaterialCard", () => {
|
||||
expect(onSelect).not.toHaveBeenCalled();
|
||||
});
|
||||
|
||||
test("选中状态不再使用 app-inbox-card-selected 类", () => {
|
||||
test("选中时包含 material-list-item--selected 类名", () => {
|
||||
renderWithProviders(
|
||||
createElement(MaterialCard, {
|
||||
material: MOCK_MATERIAL,
|
||||
@@ -80,7 +81,20 @@ describe("MaterialCard", () => {
|
||||
selected: true,
|
||||
}),
|
||||
);
|
||||
const card = screen.getByText("测试素材描述").closest(".app-inbox-card-selected");
|
||||
expect(card).toBeNull();
|
||||
const item = screen.getByText("测试素材描述").closest(".material-list-item--selected");
|
||||
expect(item).not.toBeNull();
|
||||
});
|
||||
|
||||
test("未选中时不包含 material-list-item--selected 类名", () => {
|
||||
renderWithProviders(
|
||||
createElement(MaterialCard, {
|
||||
material: MOCK_MATERIAL,
|
||||
onDelete: vi.fn(),
|
||||
onSelect: vi.fn(),
|
||||
selected: false,
|
||||
}),
|
||||
);
|
||||
const item = screen.getByText("测试素材描述").closest(".material-list-item--selected");
|
||||
expect(item).toBeNull();
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user