Files
ncd-fe/src/features/auth-login/components/login-form.test.tsx
marcin mikołajczak 59115c8dc5 Remove instance normalizer
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2023-10-27 17:48:21 +02:00

43 lines
1.1 KiB
TypeScript

import React from 'react';
import { fireEvent, render, screen } from 'soapbox/jest/test-helpers';
import { instanceSchema } from 'soapbox/schemas';
import LoginForm from './login-form';
describe('<LoginForm />', () => {
it('renders for Pleroma', () => {
const mockFn = vi.fn();
const store = {
instance: instanceSchema.parse({
version: '2.7.2 (compatible; Pleroma 2.3.0)',
}),
};
render(<LoginForm handleSubmit={mockFn} isLoading={false} />, undefined, store);
expect(screen.getByRole('heading')).toHaveTextContent(/sign in/i);
});
it('renders for Mastodon', () => {
const mockFn = vi.fn();
const store = {
instance: instanceSchema.parse({
version: '3.0.0',
}),
};
render(<LoginForm handleSubmit={mockFn} isLoading={false} />, undefined, store);
expect(screen.getByRole('heading')).toHaveTextContent(/sign in/i);
});
it('responds to the handleSubmit prop', () => {
const mockFn = vi.fn();
render(<LoginForm handleSubmit={mockFn} isLoading={false} />);
fireEvent.submit(screen.getByTestId(/button/i));
expect(mockFn).toHaveBeenCalledTimes(1);
});
});