import React from 'react';
import { render } from '@testing-library/react';
import { STORE_APPLE_MUSIC, STORE_SPOTIFY, STORE_AMAZON_MUSIC } from 'src/constants/stores';
import StoreIcon, { StoreIconProps } from '../store';

describe('<StoreIcon>', () => {
    const className = 'StoreIcon';
    const renderComponent = (props: StoreIconProps) => (
        render(<StoreIcon className={className} {...props} />));

    test('renders Apple Music icon', () => {
        const { container } = renderComponent({ storeId: STORE_APPLE_MUSIC });
        expect(container.getElementsByClassName(className).length).toBe(1);
    });
    test('renders Spotify icon', () => {
        const { container } = renderComponent({ storeId: STORE_SPOTIFY });
        expect(container.getElementsByClassName(className).length).toBe(1);
    });
    test('renders Amazon Music icon', () => {
        const { container } = renderComponent({ storeId: STORE_AMAZON_MUSIC });
        expect(container.getElementsByClassName(className).length).toBe(1);
    });
    test('does not render unknow icon', () => {
        const { container } = renderComponent({ storeId: undefined });
        expect(container.getElementsByClassName(className).length).toBe(0);
    });
});
