public void CreateExecutedTransactionLine() { ExecutedTransactionLine line = new ExecutedTransactionLine(TransactionLineBuilder.BuildDefaultTransactionInfo()); TransactionLineBuilder.ValidateTransactionLine(line, importance: Importance.NotDefined, responsible: "", category: ""); Assert.Equal(0m, ((ExecutedTransactionLine)line).Difference); }
public void ClassifySingleTransaction() { SingleTransactionLine line = new SingleTransactionLine(TransactionLineBuilder.BuildDefaultTransactionInfo()); line.Classify(TransactionLineBuilder.BuildDefaultClssification()); TransactionLineBuilder.ValidateTransactionLine(line); }
public void CreateRealizedTransactionLineFromSingleTransaction() { ExecutedTransactionLine statementLine = new ExecutedTransactionLine(TransactionLineBuilder.BuildDefaultTransactionInfo()); TransactionLineInfo lineInfo = new TransactionLineInfo(new DateTime(2019, 4, 12), 2_000m, "transaction description"); SingleTransactionLine singleTransactionLine = new SingleTransactionLine(lineInfo); singleTransactionLine.Classify(TransactionLineBuilder.BuildDefaultClssification()); ExecutedTransactionLine line = singleTransactionLine.Consolidate(statementLine); TransactionLineBuilder.ValidateTransactionLine(line, description: lineInfo.Description); Assert.Equal(900m, line.Difference); }
public void CreateRecurringTransactions() { List <TransactionLine> lines = TransactionLineBuilder.BuildList() .Add(TransactionLineBuilder.DefaultAmount, month: 4) .Build(); RecurringTransaction transaction = TransactionLineBuilder.BuildRecurringTransaction(TransactionLineBuilder.DefaultAmount); transaction.IncludeLines(lines, new YearMonth(2019, 4), new YearMonth(2019, 6)); Assert.Equal(4, lines.Count); RecurringTransactionLine line = GetFist <RecurringTransactionLine>(lines); TransactionLineBuilder.ValidateTransactionLine(line); }
public void CreateRecurringTransactionsConsideringExecutedRecurringTransactions() { List <TransactionLine> lines = TransactionLineBuilder.BuildList() .Add(TransactionLineBuilder.BuildExecutedRecurringTransactionLine(TransactionLineBuilder.DefaultAmount, month: 4)) .Add(TransactionLineBuilder.BuildExecutedRecurringTransactionLine(TransactionLineBuilder.DefaultAmount, month: 5)) .Add(TransactionLineBuilder.DefaultAmount, month: 6) .Add(TransactionLineBuilder.DefaultAmount, month: 7) .Build(); RecurringTransaction transaction = TransactionLineBuilder.BuildRecurringTransaction(TransactionLineBuilder.DefaultAmount); transaction.IncludeLines(lines, new YearMonth(2019, 4), new YearMonth(2019, 7)); Assert.Equal(6, lines.Count); RecurringTransactionLine line = GetFist <RecurringTransactionLine>(lines); TransactionLineBuilder.ValidateTransactionLine(line, date: new DateTime(2019, 6, TransactionLineBuilder.DefaultDay)); }