()
| 15 | from ccxt.base.precise import Precise # noqa E402 |
| 16 | |
| 17 | def 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' |
no test coverage detected
searching dependent graphs…