mv /ana, /ledger to /src/
This commit is contained in:
67
src/ledger/deltas_test.go
Normal file
67
src/ledger/deltas_test.go
Normal file
@@ -0,0 +1,67 @@
|
||||
package ledger
|
||||
|
||||
import "testing"
|
||||
|
||||
func TestDeltas(t *testing.T) {
|
||||
t.Run("Groups", func(t *testing.T) {
|
||||
deltas := Deltas{
|
||||
{Name: "a1"},
|
||||
{Name: "b1"},
|
||||
{Name: "b2"},
|
||||
{Name: "b3"},
|
||||
}
|
||||
|
||||
deltas = deltas.Group(GroupName("^."))
|
||||
if len(deltas) != 4 {
|
||||
t.Error(len(deltas))
|
||||
}
|
||||
if deltas[0].Name != "a" {
|
||||
t.Error(deltas[0].Name)
|
||||
}
|
||||
if deltas[1].Name != "b" {
|
||||
t.Error(deltas[1].Name)
|
||||
}
|
||||
if deltas[2].Name != "b" {
|
||||
t.Error(deltas[2].Name)
|
||||
}
|
||||
if deltas[3].Name != "b" {
|
||||
t.Error(deltas[3].Name)
|
||||
}
|
||||
})
|
||||
|
||||
t.Run("balances", func(t *testing.T) {
|
||||
deltas := Deltas{
|
||||
{Name: "a", Value: 0},
|
||||
{Name: "b", Value: 1},
|
||||
{Name: "b", Value: -.999999999999999999999999},
|
||||
{Name: "b", Value: 1.3},
|
||||
}
|
||||
|
||||
balances := deltas.Balances()
|
||||
if len(balances) != 1 {
|
||||
t.Error(len(balances), balances)
|
||||
}
|
||||
if balances["b"][""] != 1.3 {
|
||||
t.Error(balances["b"])
|
||||
}
|
||||
})
|
||||
|
||||
t.Run("register", func(t *testing.T) {
|
||||
deltas := Deltas{
|
||||
{Date: "a", Value: 0.1},
|
||||
{Date: "a", Value: 2.2},
|
||||
{Date: "b", Value: 4.3},
|
||||
}
|
||||
got := deltas.Register()
|
||||
t.Logf("%+v", got)
|
||||
if len(got) != 2 {
|
||||
t.Error(len(got))
|
||||
}
|
||||
if int(10*got["a"][""][""]) != 23 {
|
||||
t.Error(got["a"][""][""])
|
||||
}
|
||||
if int(10*got["b"][""][""]) != 66 {
|
||||
t.Error(got["b"][""][""])
|
||||
}
|
||||
})
|
||||
}
|
||||
Reference in New Issue
Block a user