From dd2c7ed278d2834a35979241d52cf54c08ad6f14 Mon Sep 17 00:00:00 2001 From: Sreetam Das Date: Mon, 20 Jul 2020 00:02:07 +0530 Subject: [PATCH] fix: proper apostrophe in stats card's header * fix: remove 's' after apostrophe if name ends with 's' * fix: respect GITHUB_TOKEN env var before PAT_s * revert: verbose console log for retries * Revert "fix: respect GITHUB_TOKEN env var before PAT_s" This reverts commit 2becbe595c2df4580aa81d690482187b1e6ba512. * test: added test for title apostrophe Co-authored-by: anuraghazra --- src/renderStatsCard.js | 4 +++- tests/renderStatsCard.test.js | 14 ++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/renderStatsCard.js b/src/renderStatsCard.js index 7f9df53..416ce53 100644 --- a/src/renderStatsCard.js +++ b/src/renderStatsCard.js @@ -124,9 +124,11 @@ const renderStatsCard = (stats = {}, options = { hide: [] }) => { }); // Conditionally rendered elements + + const apostrophe = ["x", "s"].includes(name.slice(-1)) ? "" : "s"; const title = hide_title ? "" - : `${name}'s GitHub Stats`; + : `${name}'${apostrophe} GitHub Stats`; const border = hide_border ? "" diff --git a/tests/renderStatsCard.test.js b/tests/renderStatsCard.test.js index f1c337c..c161f12 100644 --- a/tests/renderStatsCard.test.js +++ b/tests/renderStatsCard.test.js @@ -39,6 +39,20 @@ describe("Test renderStatsCard", () => { expect(queryByTestId(document.body, "rank-circle")).toBeInTheDocument(); }); + it("should have proper name apostrophe", () => { + document.body.innerHTML = renderStatsCard({ ...stats, name: "Anil Das" }); + + expect(document.getElementsByClassName("header")[0].textContent).toBe( + "Anil Das' GitHub Stats" + ); + + document.body.innerHTML = renderStatsCard({ ...stats, name: "Felix" }); + + expect(document.getElementsByClassName("header")[0].textContent).toBe( + "Felix' GitHub Stats" + ); + }); + it("should hide individual stats", () => { document.body.innerHTML = renderStatsCard(stats, { hide: "['issues', 'prs', 'contribs']",