| import React from 'react'; |
| import { render, screen, fireEvent } from '@testing-library/react'; |
| import Login from './Login'; |
| |
| describe('Login component', () => { |
| test('renders login form', () => { |
| const onRegisterClick = jest.fn(); |
| render(<Login onRegisterClick={onRegisterClick} />); |
| |
| const usernameInput = screen.getByPlaceholderText('请输入用户名'); |
| const passwordInput = screen.getByPlaceholderText('请输入密码'); |
| const loginButton = screen.getByText('登录'); |
| |
| expect(usernameInput).toBeInTheDocument(); |
| expect(passwordInput).toBeInTheDocument(); |
| expect(loginButton).toBeInTheDocument(); |
| }); |
| |
| test('calls onRegisterClick when "点击注册" is clicked', () => { |
| const onRegisterClick = jest.fn(); |
| render(<Login onRegisterClick={onRegisterClick} />); |
| |
| const registerButton = screen.getByText('点击注册'); |
| fireEvent.click(registerButton); |
| |
| expect(onRegisterClick).toHaveBeenCalled(); |
| }); |
| }); |