Ejemplo n.º 1
0
        public BudgetCategory RandomBudgetCategory(Budget budget, eBudgetCategoryType budgetCategoryType)
        {
            var icon = new BudgetCategoryIcon(new BudgetCategoryIconId(), RandomString(4));

            return(BudgetCategory.Create(budget,
                                         RandomString(4),
                                         icon,
                                         budgetCategoryType));
        }
Ejemplo n.º 2
0
        public static BudgetCategory Create
            (Budget budget,
            string name,
            BudgetCategoryIcon icon,
            eBudgetCategoryType budgetCategoryType)
        {
            var category = new BudgetCategory()
            {
                BudgetCategoryId   = new BudgetCategoryId(),
                BudgetCategoryType = budgetCategoryType,
                BudgetId           = budget.BudgetId
            };

            category.SetIcon(icon);
            category.SetName(name);
            return(category);
        }
Ejemplo n.º 3
0
        public void Should_SetTransactionDateWithoutTimePart()
        {
            // Arrange
            var budget = Budget.Create(RandomString(4),
                                       DateTime.Now,
                                       new Currency(eCurrencyCode.PLN));

            var icon           = new BudgetCategoryIcon(new BudgetCategoryIconId(Guid.NewGuid()), RandomString(4));
            var budgetCategory = BudgetCategory.Create(budget,
                                                       RandomString(4),
                                                       icon,
                                                       eBudgetCategoryType.Income);


            // Act
            var transaction = Transaction.Create(RandomString(5),
                                                 budgetCategory,
                                                 new MoneyAmount(budget.Currency.CurrencyCode, RandomInt()),
                                                 DateTime.Now);


            // Assert
            transaction.TransactionDate.Should().Be(DateTime.Today);
        }
Ejemplo n.º 4
0
        public void Throws_WhenChangingAmountToDifferentCurrency()
        {
            // Arrange
            var budget = Budget.Create(RandomString(4),
                                       DateTime.Now,
                                       new Currency(eCurrencyCode.PLN));

            var icon           = new BudgetCategoryIcon(new BudgetCategoryIconId(Guid.NewGuid()), RandomString(4));
            var budgetCategory = BudgetCategory.Create(budget,
                                                       RandomString(4),
                                                       icon,
                                                       eBudgetCategoryType.Income);

            var transaction = Transaction.Create(RandomString(5),
                                                 budgetCategory,
                                                 new MoneyAmount(budget.Currency.CurrencyCode, RandomInt()),
                                                 DateTime.Now);
            var newAmount = new MoneyAmount(eCurrencyCode.AFN, RandomInt());
            // Act
            Action act = () => transaction.SetAmount(newAmount);

            // Assert
            act.Should().Throw <BusinessException>();
        }
Ejemplo n.º 5
0
 public void SetIcon(BudgetCategoryIcon icon)
 {
     BudgetCategoryIcon   = icon;
     BudgetCategoryIconId = icon?.BudgetCategoryIconId;
 }