From 3443b37904f4c29d3488fd665676672518e39f92 Mon Sep 17 00:00:00 2001 From: Anurag Hazra Date: Sat, 26 Sep 2020 16:08:30 +0530 Subject: [PATCH] chore: added specific error message in wakatime card (#498) --- src/fetchers/wakatime-fetcher.js | 17 +++++++++++++---- tests/fetchWakatime.test.js | 2 +- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/src/fetchers/wakatime-fetcher.js b/src/fetchers/wakatime-fetcher.js index 35de940d..41ea22f2 100644 --- a/src/fetchers/wakatime-fetcher.js +++ b/src/fetchers/wakatime-fetcher.js @@ -1,11 +1,20 @@ const axios = require("axios"); const fetchLast7Days = async ({ username }) => { - const { data } = await axios.get( - `https://wakatime.com/api/v1/users/${username}/stats/last_7_days?is_including_today=true`, - ); + try { + const { data } = await axios.get( + `https://wakatime.com/api/v1/users/${username}/stats/last_7_days?is_including_today=true`, + ); - return data.data; + return data.data; + } catch (err) { + if (err.response.status === 404) { + throw new Error( + "Wakatime user not found, make sure you have a wakatime profile", + ); + } + throw err; + } }; module.exports = { diff --git a/tests/fetchWakatime.test.js b/tests/fetchWakatime.test.js index 079f99b8..16db025b 100644 --- a/tests/fetchWakatime.test.js +++ b/tests/fetchWakatime.test.js @@ -207,7 +207,7 @@ describe("Wakatime fetcher", () => { mock.onGet(/\/https:\/\/wakatime\.com\/api/).reply(404, wakaTimeData); await expect(fetchLast7Days("noone")).rejects.toThrow( - "Request failed with status code 404", + "Wakatime user not found, make sure you have a wakatime profile", ); }); });