import React from 'react';
import { renderWithProvider } from '../../../../test/lib/render-helpers';
import NftDefaultImage from '.';
describe('NFT Default Image', () => {
it('should render with no props', () => {
const { container } = renderWithProvider();
expect(container).toMatchSnapshot();
});
it('should match snapshot with all provided props', () => {
const props = {
name: 'NFT Name',
tokenId: '123',
clickable: true,
};
const { container } = renderWithProvider();
expect(container).toMatchSnapshot();
});
it('should match snapshot with missing clickable prop', () => {
const props = {
name: 'NFT Name',
tokenId: '123',
};
const { container } = renderWithProvider();
expect(container).toMatchSnapshot();
});
it('should render NFT name', () => {
const props = {
name: 'NFT Name',
};
const { queryByText } = renderWithProvider();
const nftElement = queryByText(`${props.name} #`);
expect(nftElement).toBeInTheDocument();
});
it('should render NFT name and tokenId', () => {
const props = {
name: 'NFT Name',
tokenId: '123',
};
const { queryByText } = renderWithProvider();
const nftElement = queryByText(`${props.name} #${props.tokenId}`);
expect(nftElement).toBeInTheDocument();
});
it('does not render component with clickable class when clickable is false', () => {
const { container } = renderWithProvider(
,
);
expect(container.firstChild).not.toHaveClass('nft-default--clickable');
});
it('renders component with clickable class when clickable is true', () => {
const { container } = renderWithProvider(
,
);
expect(container.firstChild).toHaveClass('nft-default--clickable');
});
});