import React from 'react';
import { renderInAppContext } from '@theorchard/suite-testing';
import { mockExtendedValidations } from 'lib/test/mocks/validations';
import ProductFieldValidation from '../productFieldValidation';

describe('<ProductFieldValidation>', () => {
    test('renders as a warning when only warnings are present', () => {
        const filteredVals = mockExtendedValidations.filter(
            val => val.severity === 'warn'
        );
        const { getByTestId } = renderInAppContext(
            <ProductFieldValidation validations={filteredVals} />
        );
        const renderedElem = getByTestId('WarningGlyphIcon');
        expect(renderedElem).toHaveClass('warning');
    });

    test('renders as an error when at least one is present', () => {
        const { getByTestId } = renderInAppContext(
            <ProductFieldValidation validations={mockExtendedValidations} />
        );
        const renderedElem = getByTestId('WarningGlyphIcon');
        expect(renderedElem).toHaveClass('error');
    });
});
