import { render } from '@testing-library/react';
import React from 'react';
import { MarketingHighlightStore } from 'shared/data/schema';
import ProjectMarketingHighlights from '../project-marketing-highlights';
import type { ProjectMarketingHighlightsProps } from '../project-marketing-highlights';

describe('<ProjectMarketingHighlights>', () => {
    const marketingTerritories = [
        {
            category: 'Top Market',
            countryId: '1',
            name: 'United States',
        },
    ];
    const marketingHighlightsState = {
        projectMarketingHighlights: [
            {
                marketingHighlight: 'global marketing highlight',
            },
            {
                marketingHighlight: 'spotify marketing highlight',
                store: MarketingHighlightStore.MARKETING_HIGHLIGHTS_STORE_SPOTIFY,
            },
            {
                marketingHighlight: 'united states marketing highlight',
                category: 'Top Market',
                countryId: '1',
                name: 'United States',
            },
        ],
        setProjectMarketingHighlights: jest.fn(),
    };
    const defaultProps: ProjectMarketingHighlightsProps = {
        editable: true,
        marketingHighlightsState,
        marketingTerritories,
    };

    const renderWrapper = (
        props: Partial<ProjectMarketingHighlightsProps> = {}
    ) => render(<ProjectMarketingHighlights {...defaultProps} {...props} />);

    describe('Renders component', () => {
        test('Matches snapshot', () => {
            const { container } = renderWrapper();
            expect(container).toMatchSnapshot();
        });
    });
});
