// (C) 2007-2019 GoodData Corporation import * as HttpStatusCodes from "http-status-codes"; import { isHttpStatusCode } from "../http"; describe("isHttpStatusCode", () => { it("should recognize all HTTP status codes from the enum", () => { expect(isHttpStatusCode(HttpStatusCodes.OK)).toBeTruthy(); expect(isHttpStatusCode(HttpStatusCodes.CREATED)).toBeTruthy(); expect(isHttpStatusCode(HttpStatusCodes.UNAUTHORIZED)).toBeTruthy(); expect(isHttpStatusCode(HttpStatusCodes.NOT_FOUND)).toBeTruthy(); expect(isHttpStatusCode(HttpStatusCodes.BAD_REQUEST)).toBeTruthy(); expect(isHttpStatusCode(HttpStatusCodes.INTERNAL_SERVER_ERROR)).toBeTruthy(); expect(isHttpStatusCode(HttpStatusCodes.NO_CONTENT)).toBeTruthy(); expect(isHttpStatusCode(HttpStatusCodes.REQUEST_TOO_LONG)).toBeTruthy(); expect(isHttpStatusCode(HttpStatusCodes.ACCEPTED)).toBeTruthy(); }); it("anything other than HTTP status codes from the enum should return false", () => { expect(isHttpStatusCode("not http")).toBeFalsy(); expect(isHttpStatusCode(1)).toBeFalsy(); expect(isHttpStatusCode({})).toBeFalsy(); expect(isHttpStatusCode([])).toBeFalsy(); expect(isHttpStatusCode(true)).toBeFalsy(); expect(isHttpStatusCode(null)).toBeFalsy(); expect(isHttpStatusCode(undefined)).toBeFalsy(); }); });