blob: 21b920c6866c4d2d47565a2dac11c1466cb4fd84 [file] [log] [blame]
package humanize
import (
"testing"
)
func TestSI(t *testing.T) {
testList{
{"e-24", SI(1e-24, "F"), "1yF"},
{"e-21", SI(1e-21, "F"), "1zF"},
{"e-18", SI(1e-18, "F"), "1aF"},
{"e-15", SI(1e-15, "F"), "1fF"},
{"e-12", SI(1e-12, "F"), "1pF"},
{"e-12", SI(2.2345e-12, "F"), "2.2345pF"},
{"e-12", SI(2.23e-12, "F"), "2.23pF"},
{"e-11", SI(2.23e-11, "F"), "22.3pF"},
{"e-10", SI(2.2e-10, "F"), "220pF"},
{"e-9", SI(2.2e-9, "F"), "2.2nF"},
{"e-8", SI(2.2e-8, "F"), "22nF"},
{"e-7", SI(2.2e-7, "F"), "220nF"},
{"e-6", SI(2.2e-6, "F"), "2.2µF"},
{"e-6", SI(1e-6, "F"), "1µF"},
{"e-5", SI(2.2e-5, "F"), "22µF"},
{"e-4", SI(2.2e-4, "F"), "220µF"},
{"e-3", SI(2.2e-3, "F"), "2.2mF"},
{"e-2", SI(2.2e-2, "F"), "22mF"},
{"e-1", SI(2.2e-1, "F"), "220mF"},
{"e+0", SI(2.2e-0, "F"), "2.2F"},
{"e+0", SI(2.2, "F"), "2.2F"},
{"e+1", SI(2.2e+1, "F"), "22F"},
{"e+1", SI(22, "F"), "22F"},
{"e+2", SI(2.2e+2, "F"), "220F"},
{"e+2", SI(220, "F"), "220F"},
{"e+3", SI(2.2e+3, "F"), "2.2kF"},
{"e+3", SI(2200, "F"), "2.2kF"},
{"e+4", SI(2.2e+4, "F"), "22kF"},
{"e+4", SI(22000, "F"), "22kF"},
{"e+5", SI(2.2e+5, "F"), "220kF"},
{"e+6", SI(2.2e+6, "F"), "2.2MF"},
{"e+6", SI(1e+6, "F"), "1MF"},
{"e+7", SI(2.2e+7, "F"), "22MF"},
{"e+8", SI(2.2e+8, "F"), "220MF"},
{"e+9", SI(2.2e+9, "F"), "2.2GF"},
{"e+10", SI(2.2e+10, "F"), "22GF"},
{"e+11", SI(2.2e+11, "F"), "220GF"},
{"e+12", SI(2.2e+12, "F"), "2.2TF"},
{"e+15", SI(2.2e+15, "F"), "2.2PF"},
{"e+18", SI(2.2e+18, "F"), "2.2EF"},
{"e+21", SI(2.2e+21, "F"), "2.2ZF"},
{"e+24", SI(2.2e+24, "F"), "2.2YF"},
// special case
{"1M", SI(1000*1000, "B"), "1MB"},
{"1M", SI(1e6, "B"), "1MB"},
}.validate(t)
}