public void SimpleEntry() { var accounting = new Accounting(); var entry = new Entry("debit-account", "credit-account", 100m); accounting.Register(entry); Assert.That(accounting.GetAccountBalance("debit-account"), Is.EqualTo(-100)); Assert.That(accounting.GetAccountBalance("credit-account"), Is.EqualTo(100)); }
public void Register(Entry entry) { foreach (var acc in entry.DebitAccounts) { if (!accounts.Keys.Contains(acc.Key)) accounts.Add(acc.Key, 0m); accounts[acc.Key] -= acc.Value; } foreach (var acc in entry.CreditAccounts) { if (!accounts.Keys.Contains(acc.Key)) accounts.Add(acc.Key, 0m); accounts[acc.Key] += acc.Value; } }