import React from 'react';
import { ERC1155, ERC721 } from '@metamask/controller-utils';
import mockState from '../../../../test/data/mock-state.json';
import { renderWithProvider } from '../../../../test/lib/render-helpers';
import configureStore from '../../../store/store';
import ConfirmSubTitle from './confirm-subtitle';
describe('ConfirmSubTitle', () => {
let store;
beforeEach(() => {
mockState.metamask.preferences.showFiatInTestnets = true;
store = configureStore(mockState);
});
it('should render subtitle correctly', async () => {
const { findByText } = renderWithProvider(
,
store,
);
expect(await findByText('$0.01')).toBeInTheDocument();
});
it('should return null if showFiatInTestnets preference if false', () => {
mockState.metamask.preferences.showFiatInTestnets = false;
store = configureStore(mockState);
const { container } = renderWithProvider(
,
store,
);
expect(container.firstChild).toStrictEqual(null);
});
it('should not return null if it is NFT Transfer', async () => {
mockState.metamask.preferences.showFiatInTestnets = false;
mockState.metamask.allNftContracts = {
[mockState.metamask.selectedAddress]: {
[mockState.metamask.providerConfig.chainId]: [{ address: '0x9' }],
},
};
store = configureStore(mockState);
const { findByText } = renderWithProvider(
,
store,
);
expect(await findByText('0.00001')).toBeInTheDocument();
});
it('should not return null if assetStandard is ERC1155', async () => {
mockState.metamask.preferences.showFiatInTestnets = false;
store = configureStore(mockState);
const { findByText } = renderWithProvider(
,
store,
);
expect(await findByText('0.00001')).toBeInTheDocument();
});
it('should not return null if assetStandard is ERC712', async () => {
mockState.metamask.preferences.showFiatInTestnets = false;
store = configureStore(mockState);
const { findByText } = renderWithProvider(
,
store,
);
expect(await findByText('0.00001')).toBeInTheDocument();
});
it('should render subtitleComponent if passed', () => {
const { getByText } = renderWithProvider(
dummy_sub_title_passed}
/>,
store,
);
expect(getByText('dummy_sub_title_passed')).toBeInTheDocument();
});
});