Disallow empty transaction
continuous-integration/drone/push Build is passing Details

This commit is contained in:
SeraphJACK 2023-09-26 21:05:47 +08:00
parent 8d5524a093
commit a0203d5709
Signed by: SeraphJACK
GPG Key ID: B4FFEA56F3BE0D0C
1 changed files with 5 additions and 0 deletions

View File

@ -8,6 +8,7 @@ import (
var ErrMissingPayee = errors.New("missing payee")
var ErrUnknownAccount = errors.New("unknown account")
var ErrEmptyTransaction = errors.New("no postings defined")
type Config struct {
Currencies []string `yaml:"currencies"`
@ -101,6 +102,10 @@ func Parse(tokens []string, cfg *Config) (*Transaction, error) {
txn.Postings = append(txn.Postings, p)
}
if len(txn.Postings) == 0 {
return nil, ErrEmptyTransaction
}
return txn, txn.Validate()
}