Beispiel #1
0
        private static void AddExpenses(Report report)
        {
            Console.WriteLine("When prompted, enter aggregated expenses...");
            var expenseCategories = BudgetCategoryFactory.GetExpenseCategories();

            foreach (var category in expenseCategories)
            {
                var amount     = GetPromptedAmount(category);
                var budgetType = BudgetCategoryFactory.GetBudgetType(category, "");
                report.AddExpenditure(budgetType, amount);
            }
        }
Beispiel #2
0
        private static void AddIncome(Report report)
        {
            Console.WriteLine("When prompted, enter income...");
            var incomeCategories = BudgetCategoryFactory.GetIncomeCategories();

            foreach (var category in incomeCategories)
            {
                var prompt     = string.IsNullOrWhiteSpace(category) ? "Unspecified Income" : category;
                var amount     = GetPromptedAmount(prompt);
                var budgetType = BudgetCategoryFactory.GetBudgetType("Income", category);
                report.AddExpenditure(budgetType, amount);
            }
        }
Beispiel #3
0
        public void GetBudgetTypeHandlesEmptySubCategories()
        {
            var budgetType = BudgetCategoryFactory.GetBudgetType("Income", "");

            Assert.That(budgetType, Is.EqualTo(BudgetType.Income));
        }
Beispiel #4
0
        public void CanGetBudgetTypeForValidCategories()
        {
            var budgetType = BudgetCategoryFactory.GetBudgetType("Income", "Misc");

            Assert.That(budgetType, Is.EqualTo(BudgetType.Income_Misc));
        }