| 80 | } while (0) |
| 81 | |
| 82 | int main(int argc, char *argv[]) |
| 83 | { |
| 84 | struct amount_msat msat; |
| 85 | struct amount_sat sat; |
| 86 | |
| 87 | common_setup(argv[0]); |
| 88 | |
| 89 | /* Grossly malformed */ |
| 90 | FAIL_MSAT(&msat, "x"); |
| 91 | FAIL_MSAT(&msat, "x100"); |
| 92 | |
| 93 | PASS_MSAT(&msat, "0", 0); |
| 94 | PASS_MSAT(&msat, "1", 1); |
| 95 | PASS_MSAT(&msat, "2100000000000000000", 2100000000000000000ULL); |
| 96 | FAIL_MSAT(&msat, "0.0"); |
| 97 | FAIL_MSAT(&msat, "0.00000000"); |
| 98 | FAIL_MSAT(&msat, "0.00000000000"); |
| 99 | FAIL_MSAT(&msat, "0.00000000msat"); |
| 100 | FAIL_MSAT(&msat, "-1"); |
| 101 | |
| 102 | PASS_MSAT(&msat, "0msat", 0); |
| 103 | PASS_MSAT(&msat, "1msat", 1); |
| 104 | PASS_MSAT(&msat, "2100000000000000000msat", 2100000000000000000ULL); |
| 105 | FAIL_MSAT(&msat, "-1msat"); |
| 106 | |
| 107 | PASS_MSAT(&msat, "0sat", 0); |
| 108 | PASS_MSAT(&msat, "1sat", 1000); |
| 109 | PASS_MSAT(&msat, "2100000000000000sat", 2100000000000000000ULL); |
| 110 | FAIL_MSAT(&msat, "-1sat"); |
| 111 | |
| 112 | PASS_MSAT(&msat, "0.00000000btc", 0); |
| 113 | PASS_MSAT(&msat, "0.00000000000btc", 0); |
| 114 | PASS_MSAT(&msat, "0.00000001btc", 1000); |
| 115 | PASS_MSAT(&msat, "0.00000000001btc", 1); |
| 116 | PASS_MSAT(&msat, "1.2btc", 120000000000); |
| 117 | PASS_MSAT(&msat, "1.23btc", 123000000000); |
| 118 | PASS_MSAT(&msat, "1.234btc", 123400000000); |
| 119 | PASS_MSAT(&msat, "1.2345btc", 123450000000); |
| 120 | PASS_MSAT(&msat, "1.23456btc", 123456000000); |
| 121 | PASS_MSAT(&msat, "1.234567btc", 123456700000); |
| 122 | PASS_MSAT(&msat, "1.2345678btc", 123456780000); |
| 123 | PASS_MSAT(&msat, "1.23456789btc", 123456789000); |
| 124 | PASS_MSAT(&msat, "1.234567890btc", 123456789000); |
| 125 | PASS_MSAT(&msat, "1.2345678901btc", 123456789010); |
| 126 | PASS_MSAT(&msat, "1.23456789012btc", 123456789012); |
| 127 | FAIL_MSAT(&msat, "1.000000000000btc"); |
| 128 | FAIL_MSAT(&msat, "-1.23456789btc"); |
| 129 | FAIL_MSAT(&msat, "-1.23456789012btc"); |
| 130 | |
| 131 | /* Overflowingly big. */ |
| 132 | FAIL_MSAT(&msat, "21000000000000000000000000.00000000btc"); |
| 133 | |
| 134 | /* Grossly malformed */ |
| 135 | FAIL_SAT(&sat, "x"); |
| 136 | FAIL_SAT(&sat, "x100"); |
| 137 | |
| 138 | PASS_SAT(&sat, "0", 0); |
| 139 | PASS_SAT(&sat, "1", 1); |
nothing calls this directly
no test coverage detected