taler-go

Utility functions in Go language
Log | Files | Refs | LICENSE

amount_test.go (840B)


      1 package util
      2 
      3 import (
      4   "testing"
      5   "fmt"
      6 )
      7 
      8 var a = Amount{
      9   Currency: "EUR",
     10   Value: 1,
     11   Fraction: 50000000,
     12 }
     13 var b = Amount{
     14   Currency: "EUR",
     15   Value: 23,
     16   Fraction: 70007000,
     17 }
     18 var c = Amount{
     19   Currency: "EUR",
     20   Value: 25,
     21   Fraction: 20007000,
     22 }
     23 
     24 
     25 
     26 
     27 func TestAmountAdd(t *testing.T) {
     28   d, err := a.Add(b)
     29   if err != nil {
     30     t.Errorf("Failed adding amount")
     31   }
     32   if c.String() != d.String() {
     33     t.Errorf("Failed to add to correct amount")
     34   }
     35 }
     36 
     37 func TestAmountSub(t *testing.T) {
     38   d, err := c.Sub(b)
     39   if err != nil {
     40     t.Errorf("Failed substracting amount")
     41   }
     42   if a.String() != d.String() {
     43     t.Errorf("Failed to substract to correct amount")
     44   }
     45 }
     46 
     47 func TestAmountLarge(t *testing.T) {
     48   x, err := ParseAmount("EUR:50")
     49   _, err = x.Add(a)
     50   if nil != err {
     51     fmt.Println(err)
     52     t.Errorf("Failed")
     53   }
     54 }