/** * External dependencies */ import { Button } from '@wordpress/components'; import CustomizeIcon from 'gridicons/dist/customize'; import moment from 'moment'; import { render } from '@testing-library/react'; import { createElement } from '@wordpress/element'; /** * Internal dependencies */ import { ActivityCard } from '../'; describe( 'ActivityCard', () => { test( 'should have correct title', () => { const { getByRole } = render( This card has some content ); expect( getByRole( 'heading', { name: 'Inbox message' } ) ).toBeInTheDocument(); } ); test( 'should render a basic card', () => { const { container } = render( This card has some content ); expect( container ).toMatchSnapshot(); } ); test( 'should render an unread bubble on a card', () => { const { container } = render( This card has some content ); expect( container ).toMatchSnapshot(); } ); test( 'should render a custom icon on a card', () => { const { container } = render( }> This card has some content ); expect( container ).toMatchSnapshot(); } ); test( 'should render a timestamp on a card', () => { // We're generating this via moment to ensure it's always "3 days ago". const threeDaysAgo = moment().subtract( 3, 'days' ).format(); const { container } = render( This card has some content ); expect( container ).toMatchSnapshot(); } ); test( 'supports a non-date "date" prop on a card', () => { // We should be able to provide any string to the date prop. const { container } = render( This card has some content ); expect( container ).toMatchSnapshot(); } ); test( 'should render an action on a card', () => { const noop = () => {}; const { container } = render( Action } > This card has some content ); expect( container ).toMatchSnapshot(); } ); test( 'should render multiple actions on a card', () => { const noop = () => {}; const { container } = render( Action 1 , , ] } > This card has some content ); expect( container ).toMatchSnapshot(); } ); } );