Skip to content

Commit 14a9cf7

Browse files
authored
fix: getNumber, if given a default, guarantees the return type is of type number (#130)
1 parent 74e09a9 commit 14a9cf7

File tree

2 files changed

+4
-1
lines changed

2 files changed

+4
-1
lines changed

src/env.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -231,7 +231,9 @@ export class Env {
231231
* @param key The name of the envar.
232232
* @param def A default number, which itself defaults to `undefined` if not otherwise supplied.
233233
*/
234-
public getNumber(key: string, def?: number): Optional<number> {
234+
public getNumber(key: string, def: number): number;
235+
public getNumber(key: string, def?: undefined): Optional<number>;
236+
public getNumber(key: string, def?: number | undefined): Optional<number> {
235237
const value = this.getString(key);
236238
if (value) {
237239
const num = toNumber(value);

test/env.test.ts

+1
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,7 @@ describe('Env', () => {
186186

187187
it('should get NaN for invalid numbers', () => {
188188
env.setString('NUM6', 'invalid');
189+
// casing because we know it's the string 'invalid'
189190
expect(isNaN(env.getNumber('NUM6') as number)).to.be.true;
190191
});
191192

0 commit comments

Comments
 (0)