Add testable example for UnitConversions
Fix imports, fix output pretty print Use btcutil.Amount() instead of btcutil.NewAmount() Trim off unnecessary .String() Testable example for Amount Improve example for btcutil.Amount
This commit is contained in:
parent
7501aee141
commit
ee7c40a181
1 changed files with 38 additions and 5 deletions
|
@ -4,32 +4,48 @@ import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"math"
|
"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() {
|
func ExampleNewAmount() {
|
||||||
amountOne, err := NewAmount(1)
|
amountOne, err := btcutil.NewAmount(1)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println(err)
|
fmt.Println(err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
fmt.Println(amountOne) //Output 1
|
fmt.Println(amountOne) //Output 1
|
||||||
|
|
||||||
amountFraction, err := NewAmount(0.01234567)
|
amountFraction, err := btcutil.NewAmount(0.01234567)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println(err)
|
fmt.Println(err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
fmt.Println(amountFraction) //Output 2
|
fmt.Println(amountFraction) //Output 2
|
||||||
|
|
||||||
amountZero, err := NewAmount(0)
|
amountZero, err := btcutil.NewAmount(0)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println(err)
|
fmt.Println(err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
fmt.Println(amountZero) //Output 3
|
fmt.Println(amountZero) //Output 3
|
||||||
|
|
||||||
amountNaN, err := NewAmount(math.NaN())
|
amountNaN, err := btcutil.NewAmount(math.NaN())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println(err)
|
fmt.Println(err)
|
||||||
return
|
return
|
||||||
|
@ -41,3 +57,20 @@ func ExampleNewAmount() {
|
||||||
// 0 BTC
|
// 0 BTC
|
||||||
// invalid bitcoin amount
|
// 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
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue