import React from 'react';
import { screen } from '@testing-library/react';
import { renderInAppContext } from '@theorchard/suite-testing';

import {
    BulkEntityEditImportModal,
    BulkEntityEditImportModalPropTypes,
} from '../bulk-entity-edit-import-modal';

describe('<BulkEntityEditImportModal>', () => {
    const props: BulkEntityEditImportModalPropTypes = {
        isModalOpen: true,
        setIsModalOpen: jest.fn(),
        onFileSelected: jest.fn(),
    };

    const renderComponent = (p: BulkEntityEditImportModalPropTypes) =>
        renderInAppContext(<BulkEntityEditImportModal {...p} />);

    it('renders the modal header', () => {
        renderComponent(props);

        const title = screen.getByText('Add Bulk Edit File');
        expect(title).toBeDefined();

        const headerButton = screen.getByTestId('headerButton');
        expect(headerButton).toHaveTextContent('Cancel');
    });

    it('renders the bulk edit file upload screen', () => {
        renderComponent(props);

        // Upload area exists in the upload screen
        const uploadArea = screen.queryByTestId('AdjustmentsUploadArea');
        expect(uploadArea).toBeDefined();
    });
});
