diff --git a/example_test.go b/example_test.go index d0c436f..73ec9f8 100644 --- a/example_test.go +++ b/example_test.go @@ -4,32 +4,48 @@ import ( "fmt" "math" - . "github.com/btcsuite/btcutil" + "github.com/btcsuite/btcutil" ) +func ExampleAmount() { + + a := btcutil.Amount(0) + fmt.Println("Zero Satoshi:", a) + + a = btcutil.Amount(1e8) + fmt.Println("100,000,000 Satoshis:", a) + + a = btcutil.Amount(1e5) + fmt.Println("100,000 Satoshis:", a) + // Output: + // Zero Satoshi: 0 BTC + // 100,000,000 Satoshis: 1 BTC + // 100,000 Satoshis: 0.001 BTC +} + func ExampleNewAmount() { - amountOne, err := NewAmount(1) + amountOne, err := btcutil.NewAmount(1) if err != nil { fmt.Println(err) return } fmt.Println(amountOne) //Output 1 - amountFraction, err := NewAmount(0.01234567) + amountFraction, err := btcutil.NewAmount(0.01234567) if err != nil { fmt.Println(err) return } fmt.Println(amountFraction) //Output 2 - amountZero, err := NewAmount(0) + amountZero, err := btcutil.NewAmount(0) if err != nil { fmt.Println(err) return } fmt.Println(amountZero) //Output 3 - amountNaN, err := NewAmount(math.NaN()) + amountNaN, err := btcutil.NewAmount(math.NaN()) if err != nil { fmt.Println(err) return @@ -41,3 +57,20 @@ func ExampleNewAmount() { // 0 BTC // invalid bitcoin amount } + +func ExampleAmount_unitConversions() { + amount := btcutil.Amount(44433322211100) + + fmt.Println("Satoshi to kBTC:", amount.Format(btcutil.AmountKiloBTC)) + fmt.Println("Satoshi to BTC:", amount) + fmt.Println("Satoshi to MilliBTC:", amount.Format(btcutil.AmountMilliBTC)) + fmt.Println("Satoshi to MicroBTC:", amount.Format(btcutil.AmountMicroBTC)) + fmt.Println("Satoshi to Satoshi:", amount.Format(btcutil.AmountSatoshi)) + + // Output: + // Satoshi to kBTC: 444.333222111 kBTC + // Satoshi to BTC: 444333.222111 BTC + // Satoshi to MilliBTC: 444333222.111 mBTC + // Satoshi to MicroBTC: 444333222111 μBTC + // Satoshi to Satoshi: 44433322211100 Satoshi +}