Skip to content

Commit 4da5891

Browse files
committed
chores(parse.test.ts): test all moduleh helper funtions
1 parent b8a8f6f commit 4da5891

File tree

1 file changed

+95
-0
lines changed

1 file changed

+95
-0
lines changed

__tests__/parse.test.ts

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
import { parse } from "../lib/index"
2+
3+
describe("parse", () => {
4+
it("toHex:: returns string for 42->0x2A", () => {
5+
expect(parse.toHex(42)).toEqual("0x2A")
6+
})
7+
it("toHex:: parses positive int numbers", () => {
8+
expect(parse.toHex(0)).toEqual("0x0")
9+
expect(parse.toHex(2)).toEqual("0x2")
10+
expect(parse.toHex(99999)).toEqual("0x1869F")
11+
})
12+
it("toHex:: parses positive decimal numbers", () => {
13+
expect(parse.toHex(0.0)).toEqual("0x0")
14+
expect(parse.toHex(0.5)).toEqual("0x0.8")
15+
expect(parse.toHex(2.999)).toEqual("0x2.FFBE76C8B4396")
16+
expect(parse.toHex(0.0002)).toEqual("0x0.000D1B71758E21968")
17+
})
18+
19+
it("hexToInt:: parses positive int numbers", () => {
20+
expect(parse.hexToInt("0x0")).toEqual(0)
21+
expect(parse.hexToInt("0x2")).toEqual(2)
22+
expect(parse.hexToInt("0x1869F")).toEqual(99999)
23+
})
24+
it("hexToInt:: parses positive decimal numbers", () => {
25+
expect(parse.hexToInt("0x0.8")).toEqual(0)
26+
expect(parse.hexToInt("0x0.000D1B71758E21968")).toEqual(0)
27+
})
28+
29+
it("toWei:: parses positive int numbers", () => {
30+
expect(parse.toWei("0")).toEqual("0")
31+
expect(parse.toWei(0)).toEqual("0")
32+
expect(parse.toWei(1)).toEqual("1000000000000000000")
33+
expect(parse.toWei("2")).toEqual("2000000000000000000")
34+
expect(parse.toWei("42")).toEqual("42000000000000000000")
35+
expect(parse.toWei(333)).toEqual("333000000000000000000")
36+
expect(parse.toWei("99999")).toEqual("99999000000000000000000")
37+
expect(parse.toWei("70828383")).toEqual("70828383000000000000000000")
38+
})
39+
it("toWei:: parses positive decimal numbers", () => {
40+
expect(parse.toWei(0.0)).toEqual("0")
41+
expect(parse.toWei("0.0")).toEqual("0")
42+
expect(parse.toWei("0.1")).toEqual("100000000000000000")
43+
expect(parse.toWei("0.5")).toEqual("500000000000000000")
44+
expect(parse.toWei(0.99)).toEqual("990000000000000000")
45+
expect(parse.toWei(0.0000993)).toEqual("99300000000000")
46+
expect(parse.toWei(0.00000000336)).toEqual("3360000000")
47+
expect(parse.toWei(0.0000000000042)).toEqual("4200000")
48+
expect(parse.toWei(0.00000000000000039)).toEqual("390")
49+
expect(parse.toWei("0.0000042")).toEqual("4200000000000")
50+
})
51+
52+
it("toTxWei:: parses positive int numbers", () => {
53+
expect(parse.toTxWei("0")).toEqual("0x0")
54+
expect(parse.toTxWei("1")).toEqual("0xDE0B6B3A7640000")
55+
expect(parse.toTxWei(1)).toEqual("0xDE0B6B3A7640000")
56+
expect(parse.toTxWei(999)).toEqual("0x3627E8F712373C0000")
57+
expect(parse.toTxWei(7963)).toEqual("0x1AFACD30637C3900000")
58+
})
59+
it("toTxWei:: parses positive decimal numbers", () => {
60+
expect(parse.toTxWei("0.0")).toEqual("0x0")
61+
expect(parse.toTxWei(0.0)).toEqual("0x0")
62+
expect(parse.toTxWei("0.0000042")).toEqual("0x3D1E3821000")
63+
expect(parse.toTxWei(0.0000000000042)).toEqual("0x401640")
64+
expect(parse.toTxWei("2.2")).toEqual("0x1E87F85809DC0000")
65+
})
66+
67+
it("weiToEth:: parses positive int numbers", () => {
68+
expect(parse.weiToEth("0")).toEqual(0)
69+
expect(parse.weiToEth(0)).toEqual(0)
70+
expect(parse.weiToEth(1000000000000000000)).toEqual(1)
71+
expect(parse.weiToEth("333000000000000000000")).toEqual(333)
72+
expect(parse.weiToEth("70828383000000000000000000")).toEqual(70828383)
73+
})
74+
it("weiToEth:: returns positive decimal numbers", () => {
75+
expect(parse.weiToEth("000000000000000001")).toEqual(1e-18)
76+
expect(parse.weiToEth("000000000000012345")).toEqual(1.2345e-14)
77+
expect(parse.weiToEth("1")).toEqual(1e-18)
78+
expect(parse.weiToEth(1)).toEqual(1e-18)
79+
expect(parse.weiToEth("123")).toEqual(123e-18)
80+
expect(parse.weiToEth("9".repeat(18))).toEqual(0.999999999999999999)
81+
expect(parse.weiToEth("1".repeat(18))).toEqual(0.1111111111111111)
82+
})
83+
84+
it("txWeiToEth:: parses positive int numbers", () => {
85+
expect(parse.txWeiToEth("0x0")).toEqual(0)
86+
expect(parse.txWeiToEth("0xDE0B6B3A7640000")).toEqual(1)
87+
expect(parse.txWeiToEth("0x3627E8F712373C0000")).toEqual(999)
88+
expect(parse.txWeiToEth("0x1AFACD30637C3900000")).toEqual(7963)
89+
})
90+
it("txWeiToEth:: returns positive decimal numbers", () => {
91+
expect(parse.txWeiToEth("0x3D1E3821000")).toEqual(0.0000042)
92+
expect(parse.txWeiToEth("0x401640")).toEqual(0.0000000000042)
93+
expect(parse.txWeiToEth("0x1E87F85809DC0000")).toEqual(2.2)
94+
})
95+
})

0 commit comments

Comments
 (0)