From 92ff9cca3ee600bd6f7308c4c483e1c35becc4c9 Mon Sep 17 00:00:00 2001 From: peaceiris <30958501+peaceiris@users.noreply.github.com> Date: Sat, 18 Jan 2020 02:05:53 +0000 Subject: [PATCH] test: Add unit testing --- __tests__/get-latest-version.test.ts | 22 ++++++++++++++-------- src/get-latest-version.ts | 22 +++++++++------------- 2 files changed, 23 insertions(+), 21 deletions(-) diff --git a/__tests__/get-latest-version.test.ts b/__tests__/get-latest-version.test.ts index e0adbd8..bfb5225 100644 --- a/__tests__/get-latest-version.test.ts +++ b/__tests__/get-latest-version.test.ts @@ -31,7 +31,11 @@ describe('getLatestVersion()', () => { .get(`/api/formula/${Tool.Repo}.json`) .reply(200, jsonTestBrew); - const versionLatest: string = await getLatestVersion(Tool.Org, Tool.Repo, 'brew'); + const versionLatest: string = await getLatestVersion( + Tool.Org, + Tool.Repo, + 'brew' + ); expect(versionLatest).toMatch(Tool.TestVersionLatest); }); @@ -40,7 +44,11 @@ describe('getLatestVersion()', () => { .get(`/repos/${Tool.Org}/${Tool.Repo}/releases/latest`) .reply(200, jsonTestGithub); - const versionLatest: string = await getLatestVersion(Tool.Org, Tool.Repo, 'github'); + const versionLatest: string = await getLatestVersion( + Tool.Org, + Tool.Repo, + 'github' + ); expect(versionLatest).toMatch(Tool.TestVersionLatest); }); @@ -49,11 +57,9 @@ describe('getLatestVersion()', () => { .get(`/api/formula/${Tool.Repo}.json`) .reply(404); - try { - const versionLatest: string = await getLatestVersion(Tool.Org, Tool.Repo, 'brew'); - console.debug(versionLatest); - } catch (e) { - expect(e).toThrow(FetchError); - } + // const versionLatest = await getLatestVersion(Tool.Org, Tool.Repo, 'brew'); + await expect( + getLatestVersion(Tool.Org, Tool.Repo, 'brew') + ).rejects.toThrowError(FetchError); }); }); diff --git a/src/get-latest-version.ts b/src/get-latest-version.ts index e6f3c37..5922830 100644 --- a/src/get-latest-version.ts +++ b/src/get-latest-version.ts @@ -17,18 +17,14 @@ export async function getLatestVersion( repo: string, api: string ): Promise { - try { - const url = getURL(org, repo, api); - const response = await fetch(url); - const json = await response.json(); - let latestVersion = ''; - if (api === 'brew') { - latestVersion = json.versions.stable; - } else if (api === 'github') { - latestVersion = json.tag_name; - } - return latestVersion; - } catch (e) { - return e; + const url = getURL(org, repo, api); + const response = await fetch(url); + const json = await response.json(); + let latestVersion = ''; + if (api === 'brew') { + latestVersion = json.versions.stable; + } else if (api === 'github') { + latestVersion = json.tag_name; } + return latestVersion; }