Fix fetch not using error system when unable to fetch #100
2 changed files with 9 additions and 3 deletions
|
@ -15,7 +15,13 @@ const sortable = [
|
||||||
export default async function randomBunny(subreddit: string, sortBy: string = 'hot'): Promise<IReturnResult> {
|
export default async function randomBunny(subreddit: string, sortBy: string = 'hot'): Promise<IReturnResult> {
|
||||||
if (!sortable.includes(sortBy)) sortBy = 'hot';
|
if (!sortable.includes(sortBy)) sortBy = 'hot';
|
||||||
|
|
||||||
const result = await fetch(`https://reddit.com/r/${subreddit}/${sortBy}.json`);
|
const result = await fetch(`https://reddit.com/r/${subreddit}/${sortBy}.json`)
|
||||||
|
.then((res) => {
|
||||||
|
return res;
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
return null;
|
||||||
|
});
|
||||||
|
|
||||||
if (!result) {
|
if (!result) {
|
||||||
return {
|
return {
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
import { ErrorCode } from "../src/constants/ErrorCode";
|
import { ErrorCode } from "../src/constants/ErrorCode";
|
||||||
import ErrorMessages from "../src/constants/ErrorMessages";
|
import ErrorMessages from "../src/constants/ErrorMessages";
|
||||||
import randomBunny from "../src/index";
|
import randomBunny from "../src/index";
|
||||||
import fetch from "got-cjs";
|
import fetch, { CancelableRequest } from "got-cjs";
|
||||||
|
|
||||||
jest.mock('got-cjs');
|
jest.mock('got-cjs');
|
||||||
const fetchMock = jest.mocked(fetch);
|
const fetchMock = jest.mocked(fetch);
|
||||||
|
@ -104,7 +104,7 @@ describe('randomBunny', () => {
|
||||||
});
|
});
|
||||||
|
|
||||||
test('GIVEN the fetch fails, EXPECT failure result', async () => {
|
test('GIVEN the fetch fails, EXPECT failure result', async () => {
|
||||||
fetchMock.mockResolvedValue(null);
|
fetchMock.mockRejectedValue('Test Reason')
|
||||||
|
|
||||||
const result = await randomBunny('rabbits', 'new');
|
const result = await randomBunny('rabbits', 'new');
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue