MCPcopy Create free account
hub / github.com/ccxt/ccxt / test_precise

Function test_precise

python/ccxt/test/base/test_precise.py:17–166  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

15from ccxt.base.precise import Precise # noqa E402
16
17def test_precise():
18 w = '-1.123e-6'
19 x = '0.00000002'
20 y = '69696900000'
21 z = '0'
22 a = '1e8'
23 assert Precise.string_mul(x, y) == '1393.938'
24 assert Precise.string_mul(y, x) == '1393.938'
25 assert Precise.string_add(x, y) == '69696900000.00000002'
26 assert Precise.string_add(y, x) == '69696900000.00000002'
27 assert Precise.string_sub(x, y) == '-69696899999.99999998'
28 assert Precise.string_sub(y, x) == '69696899999.99999998'
29 assert Precise.string_div(x, y, 1) == '0'
30 assert Precise.string_div(x, y) == '0'
31 assert Precise.string_div(x, y, 19) == '0.0000000000000000002'
32 assert Precise.string_div(x, y, 20) == '0.00000000000000000028'
33 assert Precise.string_div(x, y, 21) == '0.000000000000000000286'
34 assert Precise.string_div(x, y, 22) == '0.0000000000000000002869'
35 assert Precise.string_div(y, x) == '3484845000000000000'
36 assert Precise.string_mul(x, w) == '-0.00000000000002246'
37 assert Precise.string_mul(w, x) == '-0.00000000000002246'
38 assert Precise.string_add(x, w) == '-0.000001103'
39 assert Precise.string_add(w, x) == '-0.000001103'
40 assert Precise.string_sub(x, w) == '0.000001143'
41 assert Precise.string_sub(w, x) == '-0.000001143'
42 assert Precise.string_div(x, w) == '-0.017809439002671415'
43 assert Precise.string_div(w, x) == '-56.15'
44 assert Precise.string_mul(z, w) == '0'
45 assert Precise.string_mul(z, x) == '0'
46 assert Precise.string_mul(z, y) == '0'
47 assert Precise.string_mul(w, z) == '0'
48 assert Precise.string_mul(x, z) == '0'
49 assert Precise.string_mul(y, z) == '0'
50 assert Precise.string_add(z, w) == '-0.000001123'
51 assert Precise.string_add(z, x) == '0.00000002'
52 assert Precise.string_add(z, y) == '69696900000'
53 assert Precise.string_add(w, z) == '-0.000001123'
54 assert Precise.string_add(x, z) == '0.00000002'
55 assert Precise.string_add(y, z) == '69696900000'
56 assert Precise.string_mul(x, a) == '2'
57 assert Precise.string_mul(a, x) == '2'
58 assert Precise.string_mul(y, a) == '6969690000000000000'
59 assert Precise.string_mul(a, y) == '6969690000000000000'
60 assert Precise.string_div(y, a) == '696.969'
61 assert Precise.string_div(y, a, -1) == '690'
62 assert Precise.string_div(y, a, 0) == '696'
63 assert Precise.string_div(y, a, 1) == '696.9'
64 assert Precise.string_div(y, a, 2) == '696.96'
65 assert Precise.string_div(a, y) == '0.001434784043479695'
66 assert Precise.string_abs('0') == '0'
67 assert Precise.string_abs('-0') == '0'
68 assert Precise.string_abs('-500.1') == '500.1'
69 assert Precise.string_abs('213') == '213'
70 assert Precise.string_neg('0') == '0'
71 assert Precise.string_neg('-0') == '0'
72 assert Precise.string_neg('-500.1') == '500.1'
73 assert Precise.string_neg('213') == '-213'
74 assert Precise.string_mod('57.123', '10') == '7.123'

Callers 1

base_tests_initFunction · 0.90

Calls 15

string_mulMethod · 0.80
string_addMethod · 0.80
string_subMethod · 0.80
string_divMethod · 0.80
string_absMethod · 0.80
string_negMethod · 0.80
string_modMethod · 0.80
string_equalsMethod · 0.80
string_minMethod · 0.80
string_maxMethod · 0.80
string_gtMethod · 0.80
string_geMethod · 0.80

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…