fix: test and improve boolify

This commit is contained in:
KernelDeimos 2025-01-09 15:45:15 -05:00
parent f60c008158
commit 44ad3c5781
2 changed files with 23 additions and 0 deletions

View File

@ -44,6 +44,12 @@ const hl_type_definitions = {
return v;
}
if ( v === 1 ) return true;
if ( v === 0 ) return false
if ( typeof v === 'object' ) {
return v !== null;
}
throw new Error(`could not adapt value to boolean: ${quot(v)}`);
}
}

View File

@ -0,0 +1,17 @@
const { expect } = require('chai');
const { boolify } = require('./hl_types');
describe('hl_types', () => {
it('boolify falsy values', () => {
expect(boolify(undefined)).to.be.false;
expect(boolify(0)).to.be.false;
expect(boolify('')).to.be.false;
expect(boolify(null)).to.be.false;
})
it('boolify truthy values', () => {
expect(boolify(true)).to.be.true;
expect(boolify(1)).to.be.true;
expect(boolify('1')).to.be.true;
expect(boolify({})).to.be.true;
})
});