from freqtrade.util import decimals_per_coin, fmt_coin, round_value def test_decimals_per_coin(): assert decimals_per_coin('USDT') == 3 assert decimals_per_coin('EUR') == 3 assert decimals_per_coin('BTC') == 8 assert decimals_per_coin('ETH') == 5 def test_fmt_coin(): assert fmt_coin(222.222222, 'USDT') == '222.222 USDT' assert fmt_coin(222.2, 'USDT', keep_trailing_zeros=True) == '222.200 USDT' assert fmt_coin(222.2, 'USDT') == '222.2 USDT' assert fmt_coin(222.12745, 'EUR') == '222.127 EUR' assert fmt_coin(0.1274512123, 'BTC') == '0.12745121 BTC' assert fmt_coin(0.1274512123, 'ETH') == '0.12745 ETH' assert fmt_coin(222.222222, 'USDT', False) == '222.222' assert fmt_coin(222.2, 'USDT', False) == '222.2' assert fmt_coin(222.00, 'USDT', False) == '222' assert fmt_coin(222.12745, 'EUR', False) == '222.127' assert fmt_coin(0.1274512123, 'BTC', False) == '0.12745121' assert fmt_coin(0.1274512123, 'ETH', False) == '0.12745' assert fmt_coin(222.2, 'USDT', False, True) == '222.200' def test_round_value(): assert round_value(222.222222, 3) == '222.222' assert round_value(222.2, 3) == '222.2' assert round_value(222.00, 3) == '222' assert round_value(222.12745, 3) == '222.127' assert round_value(0.1274512123, 8) == '0.12745121' assert round_value(0.1274512123, 5) == '0.12745' assert round_value(222.2, 3, True) == '222.200' assert round_value(222.2, 0, True) == '222'