-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgetStatusCode.spec.ts
27 lines (26 loc) · 1.08 KB
/
getStatusCode.spec.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import { expect } from 'chai';
import getStatusCode from './getStatusCode';
import { HttpStatusCodes } from '../HttpStatusCodes';
import { HttpReasonPhrases } from '../HttpReasonPhrases';
describe('getStatusCode', function () {
it('# Returns the corresponding status code for a valid defined reason phrase', function () {
Object.entries(HttpReasonPhrases).forEach((reasonPhraseKeyVal) => {
expect(getStatusCode(reasonPhraseKeyVal[1])).to.equal(
(HttpStatusCodes as { [key: string]: number | string })[
reasonPhraseKeyVal[0]
]
);
expect(
getStatusCode(reasonPhraseKeyVal[1].toUpperCase(), true)
).to.equal(
(HttpStatusCodes as { [key: string]: number | string })[
reasonPhraseKeyVal[0]
]
);
});
});
it('# Returns undefined for non-existent reason phrase', function () {
expect(getStatusCode('')).to.equal(undefined);
expect(getStatusCode('hello')).to.equal(undefined);
});
});