From 0faebf5c9a66d61b0a75159c44291bb8773ac9f5 Mon Sep 17 00:00:00 2001 From: demmyhonore Date: Mon, 2 Nov 2020 15:33:07 +0100 Subject: [PATCH] feat(project): handle campaign due dates in overview --- .../ActiveCampaignOverviewItem.jsx | 4 +++- .../ActiveCampaignOverviewItem.test.jsx | 14 +++++++++++++- src/i18n/locales/en/campaign.json | 1 + 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/components/ActiveCampaignOverviewItem/ActiveCampaignOverviewItem.jsx b/src/components/ActiveCampaignOverviewItem/ActiveCampaignOverviewItem.jsx index 602b284..fb6adec 100644 --- a/src/components/ActiveCampaignOverviewItem/ActiveCampaignOverviewItem.jsx +++ b/src/components/ActiveCampaignOverviewItem/ActiveCampaignOverviewItem.jsx @@ -25,7 +25,9 @@ export default function ActiveCampaignOverviewItem ({ scoreImage, scoreTitle, ca {campaignTitle} - {campaignDeadline ? `${campaignDeadline} ${t('days_to_go')}` : null} + {campaignDeadline + ? (campaignDeadline > 0 ? `${campaignDeadline} ${t('days_to_go')}` : t('past_due_date')) + : null} diff --git a/src/components/ActiveCampaignOverviewItem/ActiveCampaignOverviewItem.test.jsx b/src/components/ActiveCampaignOverviewItem/ActiveCampaignOverviewItem.test.jsx index 2724b6d..78be7e6 100644 --- a/src/components/ActiveCampaignOverviewItem/ActiveCampaignOverviewItem.test.jsx +++ b/src/components/ActiveCampaignOverviewItem/ActiveCampaignOverviewItem.test.jsx @@ -15,10 +15,22 @@ describe('', () => { expect(container.firstChild).toMatchSnapshot(); }); - it('it renders the score title, campaign title and campaign deadline correctly', () => { + it('renders the score title, campaign title and campaign deadline correctly', () => { const { getByText } = render(); expect(getByText('bb')).toBeTruthy(); expect(getByText('cc')).toBeTruthy(); }); + + it('renders the campaign deadline if its a positive integer', () => { + const { getByText } = render(); + + expect(getByText(/days to go/i)).toBeTruthy(); + }); + + it('renders past due date if campaign deadline if below zero', () => { + const { getByText } = render(); + + expect(getByText(/due date/i)).toBeTruthy(); + }); }); diff --git a/src/i18n/locales/en/campaign.json b/src/i18n/locales/en/campaign.json index 6165396..91916fb 100644 --- a/src/i18n/locales/en/campaign.json +++ b/src/i18n/locales/en/campaign.json @@ -8,6 +8,7 @@ "help_us_digitize": "Help us digitize", "help_us_digitize_untitled": "Help us digitize this untitled project", "more": "More", + "past_due_date": "Past due date", "download": "Download", "share_this_campaign": "Share this campaign", "start_your_own_campaign": "Start your own campaign",