/*
* Copyright OpenSearch Contributors
* SPDX-License-Identifier: Apache-2.0
*/
import { fireEvent, render } from '@testing-library/react';
import React from 'react';
import { CreateSenderForm } from '../components/forms/CreateSenderForm';
describe(' spec', () => {
it('renders the component', () => {
const setSenderName = jest.fn();
const setEmail = jest.fn();
const setHost = jest.fn();
const setPort = jest.fn();
const setEncryption = jest.fn();
const setInputErrors = jest.fn();
const inputErrors = { senderName: [], email: [], host: [], port: [] };
const utils = render(
);
expect(utils.container.firstChild).toMatchSnapshot();
const nameInput = utils.getByTestId('create-sender-form-name-input');
fireEvent.change(nameInput, { target: { value: 'test name' } });
fireEvent.blur(nameInput);
expect(setSenderName).toBeCalledWith('test name');
const emailInput = utils.getByTestId('create-sender-form-email-input');
fireEvent.change(emailInput, { target: { value: 'test@email.com' } });
fireEvent.blur(emailInput);
expect(setEmail).toBeCalledWith('test@email.com');
const hostInput = utils.getByTestId('create-sender-form-host-input');
fireEvent.change(hostInput, { target: { value: 'host.com' } });
fireEvent.blur(hostInput);
expect(setHost).toBeCalledWith('host.com');
const portInput = utils.getByTestId('create-sender-form-port-input');
fireEvent.change(portInput, { target: { value: '23' } });
fireEvent.blur(portInput);
expect(setPort).toBeCalledWith('23');
});
it('renders errors', () => {
const setSenderName = jest.fn();
const setEmail = jest.fn();
const setHost = jest.fn();
const setPort = jest.fn();
const setEncryption = jest.fn();
const setInputErrors = jest.fn();
const inputErrors = {
senderName: ['test error'],
email: ['test error'],
host: ['test error'],
port: ['test error'],
};
const utils = render(
);
expect(utils.container.firstChild).toMatchSnapshot();
});
});