diff --git a/test/cases/tokenUtils.ts b/test/cases/tokenUtils.ts index bd0b90a..be360c5 100644 --- a/test/cases/tokenUtils.ts +++ b/test/cases/tokenUtils.ts @@ -5,6 +5,7 @@ import * as tokenUtils from "../../src/utils/tokenUtils"; import MockAdapter from "axios-mock-adapter"; import { validatelicenseKeyRegex } from "../../src/routes/verifyToken"; let mock: MockAdapter; +import * as patreon from "../mocks/patreonMock"; const validateToken = validatelicenseKeyRegex; const fakePatreonIdentity = { @@ -26,12 +27,8 @@ const fakePatreonIdentity = { describe("tokenUtils test", function() { before(function() { mock = new MockAdapter(axios, { onNoMatch: "throwException" }); - mock.onPost("https://www.patreon.com/api/oauth2/token").reply(200, { - access_token: "test_access_token", - refresh_token: "test_refresh_token", - expires_in: 3600, - }); - mock.onGet(/identity/).reply(200, fakePatreonIdentity); + mock.onPost("https://www.patreon.com/api/oauth2/token").reply(200, patreon.fakeOauth); + mock.onGet(/identity/).reply(200, patreon.fakeIdentity); }); it("Should be able to create patreon token", function (done) { @@ -50,7 +47,7 @@ describe("tokenUtils test", function() { it("Should be able to get patreon identity", function (done) { if (!config?.patreon) this.skip(); tokenUtils.getPatreonIdentity("fake_access_token").then((result) => { - assert.deepEqual(result, fakePatreonIdentity); + assert.deepEqual(result, patreon.fakeIdentity); done(); }); }); diff --git a/test/mocks/patreonMock.ts b/test/mocks/patreonMock.ts new file mode 100644 index 0000000..3b5c9ae --- /dev/null +++ b/test/mocks/patreonMock.ts @@ -0,0 +1,21 @@ +export const fakeIdentity = { + data: {}, + links: {}, + included: [ + { + attributes: { + is_monthly: true, + currently_entitled_amount_cents: 100, + patron_status: "active_patron", + }, + id: "id", + type: "campaign" + } + ], +}; + +export const fakeOauth = { + access_token: "test_access_token", + refresh_token: "test_refresh_token", + expires_in: 3600, +}; \ No newline at end of file