@cainiaofe/cn-ui-m
Version:
26 lines (25 loc) • 1.2 kB
JavaScript
import React from 'react';
import { render, screen } from '@testing-library/react';
import userEvent from '@testing-library/user-event';
import { CnFormItem } from '../index';
describe('CnFormItem', function () {
test('renders label correctly', function () {
render(React.createElement(CnFormItem, { title: "Test Label" },
React.createElement("input", { type: "text" })));
var label = screen.getByText('Test Label');
expect(label).toBeInTheDocument();
});
test('renders required asterisk when required prop is true', function () {
render(React.createElement(CnFormItem, { title: "Test Label", required: true },
React.createElement("input", { type: "text" })));
var asterisk = screen.getByText('*');
expect(asterisk).toBeInTheDocument();
});
test('triggers focus on input when clicked', function () {
render(React.createElement(CnFormItem, { title: "Test Label" },
React.createElement("input", { type: "text", "data-testid": "input" })));
var input = screen.getByTestId('input');
userEvent.click(input);
expect(document.activeElement).toBe(input);
});
});