tests: add HexToDecimal.test.js (#1662)

This commit is contained in:
Piotr Idzik
2024-05-25 13:01:13 +02:00
committed by GitHub
parent e2b9754862
commit 3623e4270f
2 changed files with 28 additions and 1 deletions

View File

@ -1,4 +1,7 @@
function hexToInt(hexNum) {
if (!/^[0-9A-F]+$/.test(hexNum)) {
throw new Error('Invalid hex string.')
}
const numArr = hexNum.split('') // converts number to array
return numArr.map((item, index) => {
switch (item) {
@ -29,4 +32,4 @@ function hexToDecimal(hexNum) {
}, 0)
}
export { hexToInt, hexToDecimal }
export { hexToDecimal }

View File

@ -0,0 +1,24 @@
import { hexToDecimal } from '../HexToDecimal'
describe('Testing HexToDecimal', () => {
it.each([
['0', 0],
['1', 1],
['A', 10],
['B', 11],
['C', 12],
['D', 13],
['E', 14],
['F', 15],
['10', 16],
['859', 2137],
['4D2', 1234],
['81323ABD92', 554893491602]
])('check with %s', (hexStr, expected) => {
expect(hexToDecimal(hexStr)).toBe(expected)
})
it.each(['a', '-1', 'G', ''])('throws for %s', (hexStr) => {
expect(() => hexToDecimal(hexStr)).toThrowError()
})
})