import React from 'react'; import AuctionSoldBanner, { getSoldText } from './AuctionSoldBanner'; import { shallow } from 'enzyme'; import { IAutoIMS } from '../../../../reducers/AuctionAssignmentReducer'; import moment from 'moment'; describe('AuctionSoldBaner Component', () => { it ('Sold Banner Does Not Display When AutoIMS is Undefined', () => { const wrapper = shallow(); const soldNotification = wrapper.find(`[data-test='auction-sold-banner-notification']`); expect(soldNotification.length).toBe(0); }); it ('Sold Banner Does Not Display When SalePrice is Undefined', () => { const wrapper = shallow(); const soldNotification = wrapper.find(`[data-test='auction-sold-banner-notification']`); expect(soldNotification.length).toBe(0); }); it ('Sold Banner Does Not Display When SoldDate is Undefined', () => { const wrapper = shallow(); const soldNotification = wrapper.find(`[data-test='auction-sold-banner-notification']`); expect(soldNotification.length).toBe(0); }); it ('Sold Banner Displays Correct Text', () => { const dummyAutoIMS = { salePrice: 1945, soldDate: moment('1945-09-02') } as IAutoIMS; const wrapper = shallow(); const soldNotification = wrapper.find(`[data-test='auction-sold-banner-notification']`); expect(soldNotification.length).toBe(1); const soldDateText = getSoldText(dummyAutoIMS); expect(soldDateText).toBe('Sold on 09/02/1945 for $1,945.00. Funds Not Sent.'); dummyAutoIMS.fundsSent = moment(); const updatedSoldDateText = getSoldText(dummyAutoIMS); expect(updatedSoldDateText).toBe('Sold on 09/02/1945 for $1,945.00. Funds Sent.'); }); });