diff options
author | Florian Dold <florian.dold@gmail.com> | 2020-01-15 15:17:02 +0100 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2020-01-15 15:17:25 +0100 |
commit | da5b3ba8aeb9d47e4f99cd22847c9b539ff8ee2b (patch) | |
tree | 6e67e1d08fd941144f464dfe55b8835db65687e6 /src/util/test_amount.c | |
parent | b37fff0d5b08926169633ce8822de7ac616ae169 (diff) |
round amounts based on config, do unit test for rounding
Diffstat (limited to 'src/util/test_amount.c')
-rw-r--r-- | src/util/test_amount.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/util/test_amount.c b/src/util/test_amount.c index d9110eaf8..4eeccd7e0 100644 --- a/src/util/test_amount.c +++ b/src/util/test_amount.c @@ -234,6 +234,29 @@ main (int argc, GNUNET_assert (0 == a2.value); GNUNET_assert (1 == a2.fraction); + /* test rounding #1 */ + + GNUNET_assert (GNUNET_OK == + TALER_string_to_amount ("EUR:4.001", + &a1)); + GNUNET_assert (GNUNET_OK == + TALER_string_to_amount ("EUR:4", + &a2)); + + GNUNET_assert (GNUNET_OK == TALER_amount_round_down (&a1, 2)); + GNUNET_assert (GNUNET_NO == TALER_amount_round_down (&a1, 2)); + GNUNET_assert (0 == TALER_amount_cmp (&a1, &a2)); + + /* test rounding #2 */ + + GNUNET_assert (GNUNET_OK == + TALER_string_to_amount ("EUR:4.001", + &a1)); + GNUNET_assert (GNUNET_OK == + TALER_string_to_amount ("EUR:4.001", + &a2)); + GNUNET_assert (GNUNET_NO == TALER_amount_round_down (&a1, 3)); + GNUNET_assert (0 == TALER_amount_cmp (&a1, &a2)); return 0; } |