Added tests for extra large values

Test “E” scientific notation formatting
This commit is contained in:
Taylor Gerring 2014-11-04 16:45:54 +01:00
parent e7d9bcd36b
commit b96a59eb28
2 changed files with 19 additions and 0 deletions

View File

@ -66,6 +66,7 @@ func CurrencyToString(num *big.Int) string {
denom = "Ada"
}
// TODO add comment clarifying expected behavior
if len(fin.String()) > 5 {
return fmt.Sprintf("%sE%d %s", fin.String()[0:5], len(fin.String())-5, denom)
}

View File

@ -79,3 +79,21 @@ func TestCommon(t *testing.T) {
t.Error("Got", wei)
}
}
func TestLarge(t *testing.T) {
douglaslarge := CurrencyToString(BigPow(100000000, 43))
adalarge := CurrencyToString(BigPow(100000000, 4))
weilarge := CurrencyToString(big.NewInt(100000000))
if douglaslarge != "10000E298 Douglas" {
t.Error("Got", douglaslarge)
}
if adalarge != "10000E7 Einstein" {
t.Error("Got", adalarge)
}
if weilarge != "100 Babbage" {
t.Error("Got", weilarge)
}
}