UNPKG

@cainiaofe/cn-ui-m

Version:
27 lines (26 loc) 1.34 kB
import React from 'react'; import { render, screen, fireEvent } from '@testing-library/react'; import { CnTab } from '../index'; describe('CnTab', function () { test('renders CnTab component', function () { var container = render(React.createElement(CnTab, null)).container; expect(container).toBeInTheDocument(); }); test('sets the active tab correctly', function () { render(React.createElement(CnTab, { activeKey: "1" }, React.createElement(CnTab.Item, { key: "1", title: "\u6807\u7B7E1" }))); expect(screen.getByText('标签1')).toBeInTheDocument(); }); test('changes the active tab on click', function () { render(React.createElement(CnTab, null, React.createElement(CnTab.Item, { key: "1", title: "Tab 1" }), React.createElement(CnTab.Item, { key: "2", title: "Tab 2" }))); fireEvent.click(screen.getByText('Tab 2')); expect(screen.getByText('Tab 2').classList.contains('cn-ui-m-tab-item--active')); }); test('renders additional slot correctly', function () { render(React.createElement(CnTab, { additionSlot: React.createElement("div", null, "Additional Slot") }, React.createElement(CnTab.Item, { key: "1" }))); expect(screen.getByText('Additional Slot')).toBeInTheDocument(); }); });