MCPcopy
hub / github.com/ccxt/ccxt / testPrecise

Method testPrecise

java/tests/src/main/java/tests/base/TestPrecise.java:12–113  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

10public class TestPrecise extends BaseTest
11{
12 public void testPrecise()
13 {
14 Object w = "-1.123e-6";
15 Object x = "0.00000002";
16 Object y = "69696900000";
17 Object z = "0";
18 Object a = "1e8";
19 Assert(Helpers.isEqual(Precise.stringMul(x, y), "1393.938"));
20 Assert(Helpers.isEqual(Precise.stringMul(y, x), "1393.938"));
21 Assert(Helpers.isEqual(Precise.stringAdd(x, y), "69696900000.00000002"));
22 Assert(Helpers.isEqual(Precise.stringAdd(y, x), "69696900000.00000002"));
23 Assert(Helpers.isEqual(Precise.stringSub(x, y), "-69696899999.99999998"));
24 Assert(Helpers.isEqual(Precise.stringSub(y, x), "69696899999.99999998"));
25 Assert(Helpers.isEqual(Precise.stringDiv(x, y, 1), "0"));
26 Assert(Helpers.isEqual(Precise.stringDiv(x, y), "0"));
27 Assert(Helpers.isEqual(Precise.stringDiv(x, y, 19), "0.0000000000000000002"));
28 Assert(Helpers.isEqual(Precise.stringDiv(x, y, 20), "0.00000000000000000028"));
29 Assert(Helpers.isEqual(Precise.stringDiv(x, y, 21), "0.000000000000000000286"));
30 Assert(Helpers.isEqual(Precise.stringDiv(x, y, 22), "0.0000000000000000002869"));
31 Assert(Helpers.isEqual(Precise.stringDiv(y, x), "3484845000000000000"));
32 Assert(Helpers.isEqual(Precise.stringMul(x, w), "-0.00000000000002246"));
33 Assert(Helpers.isEqual(Precise.stringMul(w, x), "-0.00000000000002246"));
34 Assert(Helpers.isEqual(Precise.stringAdd(x, w), "-0.000001103"));
35 Assert(Helpers.isEqual(Precise.stringAdd(w, x), "-0.000001103"));
36 Assert(Helpers.isEqual(Precise.stringSub(x, w), "0.000001143"));
37 Assert(Helpers.isEqual(Precise.stringSub(w, x), "-0.000001143"));
38 Assert(Helpers.isEqual(Precise.stringDiv(x, w), "-0.017809439002671415"));
39 Assert(Helpers.isEqual(Precise.stringDiv(w, x), "-56.15"));
40 Assert(Helpers.isEqual(Precise.stringMul(z, w), "0"));
41 Assert(Helpers.isEqual(Precise.stringMul(z, x), "0"));
42 Assert(Helpers.isEqual(Precise.stringMul(z, y), "0"));
43 Assert(Helpers.isEqual(Precise.stringMul(w, z), "0"));
44 Assert(Helpers.isEqual(Precise.stringMul(x, z), "0"));
45 Assert(Helpers.isEqual(Precise.stringMul(y, z), "0"));
46 Assert(Helpers.isEqual(Precise.stringAdd(z, w), "-0.000001123"));
47 Assert(Helpers.isEqual(Precise.stringAdd(z, x), "0.00000002"));
48 Assert(Helpers.isEqual(Precise.stringAdd(z, y), "69696900000"));
49 Assert(Helpers.isEqual(Precise.stringAdd(w, z), "-0.000001123"));
50 Assert(Helpers.isEqual(Precise.stringAdd(x, z), "0.00000002"));
51 Assert(Helpers.isEqual(Precise.stringAdd(y, z), "69696900000"));
52 Assert(Helpers.isEqual(Precise.stringMul(x, a), "2"));
53 Assert(Helpers.isEqual(Precise.stringMul(a, x), "2"));
54 Assert(Helpers.isEqual(Precise.stringMul(y, a), "6969690000000000000"));
55 Assert(Helpers.isEqual(Precise.stringMul(a, y), "6969690000000000000"));
56 Assert(Helpers.isEqual(Precise.stringDiv(y, a), "696.969"));
57 Assert(Helpers.isEqual(Precise.stringDiv(y, a, Helpers.opNeg(1)), "690"));
58 Assert(Helpers.isEqual(Precise.stringDiv(y, a, 0), "696"));
59 Assert(Helpers.isEqual(Precise.stringDiv(y, a, 1), "696.9"));
60 Assert(Helpers.isEqual(Precise.stringDiv(y, a, 2), "696.96"));
61 Assert(Helpers.isEqual(Precise.stringDiv(a, y), "0.001434784043479695"));
62 Assert(Helpers.isEqual(Precise.stringAbs("0"), "0"));
63 Assert(Helpers.isEqual(Precise.stringAbs("-0"), "0"));
64 Assert(Helpers.isEqual(Precise.stringAbs("-500.1"), "500.1"));
65 Assert(Helpers.isEqual(Precise.stringAbs("213"), "213"));
66 Assert(Helpers.isEqual(Precise.stringNeg("0"), "0"));
67 Assert(Helpers.isEqual(Precise.stringNeg("-0"), "0"));
68 Assert(Helpers.isEqual(Precise.stringNeg("-500.1"), "500.1"));
69 Assert(Helpers.isEqual(Precise.stringNeg("213"), "-213"));

Callers 1

baseTestsInitMethod · 0.80

Calls 15

isEqualMethod · 0.95
stringMulMethod · 0.95
stringAddMethod · 0.95
stringSubMethod · 0.95
stringDivMethod · 0.95
opNegMethod · 0.95
stringAbsMethod · 0.95
stringNegMethod · 0.95
stringModMethod · 0.95
stringEqualsMethod · 0.95
stringMinMethod · 0.95
stringMaxMethod · 0.95

Tested by

no test coverage detected