This commit is contained in:
Bel LaPointe
2023-10-24 07:25:55 -06:00
parent 3ea29abf8b
commit 2495e06d53
2 changed files with 32 additions and 1 deletions

View File

@@ -1,5 +1,7 @@
package ledger package ledger
import "fmt"
type Currency string type Currency string
const ( const (
@@ -32,3 +34,7 @@ func (delta Delta) Plus(other Delta) Delta {
Currency: other.Currency, Currency: other.Currency,
} }
} }
func (delta Delta) Debug() string {
return fmt.Sprintf("{@%s %s:\"%s\" %.2f %s}", delta.Date, delta.Account, delta.Description, delta.Value, delta.Currency)
}

View File

@@ -3,10 +3,35 @@ package ledger
import ( import (
"fmt" "fmt"
"io" "io"
"path/filepath"
"strings" "strings"
"testing" "testing"
) )
func TestFileTestdata(t *testing.T) {
paths, err := filepath.Glob("./testdata/*")
if err != nil {
t.Fatal(err)
}
for _, pathd := range paths {
path := pathd
t.Run(path, func(t *testing.T) {
f, err := NewFile(path)
if err != nil {
t.Fatal(err)
}
transactions, err := f.Deltas()
if err != nil {
t.Fatal(err)
}
for i := range transactions {
t.Logf("%+v", transactions[i].Debug())
}
})
}
}
func TestFileDeltas(t *testing.T) { func TestFileDeltas(t *testing.T) {
happy := []Delta{ happy := []Delta{
{ {
@@ -66,7 +91,7 @@ func TestFileDeltas(t *testing.T) {
break break
} }
if want[i] != deltas[i] { if want[i] != deltas[i] {
t.Errorf("[%d] \n\twant=%+v, \n\t got=%+v", i, want[i], deltas[i]) t.Errorf("[%d] \n\twant=%s, \n\t got=%s", i, want[i].Debug(), deltas[i].Debug())
} }
} }
}) })