public LedgerBookBuilder IncludeLedger(LedgerBucket ledger, decimal openingBalance = 0)
{
if (this.ledgerBuckets.Any(b => b.BudgetBucket.Code == ledger.BudgetBucket.Code))
{
throw new DuplicateNameException("Ledger Bucket already exists in collection.");
}
if (ledger.StoredInAccount == null)
{
ledger.StoredInAccount = StatementModelTestData.ChequeAccount;
}
this.ledgerBuckets.Add(ledger);
this.openingBalances.Add(ledger, openingBalance);
return this;
}