Esempio n. 1
0
        public void Money_Can_Be_Withdrawn_Only_If_Was_Verified_Positive_Test()
        {
            IBank    bank       = new Bank();
            Currency pln        = new Currency("PLN");
            var      currencies = new List <Currency>();

            currencies.Add(pln);
            Guid         id          = Guid.NewGuid();
            Guid         userId      = Guid.NewGuid();
            IBankAccount bankAccount = bank.CreateBankAccount(id, userId, currencies);

            Money m100 = new Money(100m, "PLN");
            Money m0   = new Money(0m, "PLN");

            bankAccount.Deposit(pln, m100);
            bankAccount.VerifyAccount();

            try
            {
                bankAccount.Withdraw(pln, m100);
            }
            catch
            {
                Assert.Fail();
                return;
            }

            Assert.AreEqual(bankAccount.GetBalance(pln), new Money(0m, "PLN"));
        }
Esempio n. 2
0
        public void Money_Can_Be_Deposited_To_BankAccount_Any_Time()
        {
            IBank    bank       = new Bank();
            Currency pln        = new Currency("PLN");
            var      currencies = new List <Currency>();

            currencies.Add(pln);
            Guid         id          = Guid.NewGuid();
            Guid         userId      = Guid.NewGuid();
            IBankAccount bankAccount = bank.CreateBankAccount(id, userId, currencies);

            Money m100 = new Money(100m, "PLN");
            Money m0   = new Money(0m, "PLN");

            bankAccount.Deposit(pln, m100);
            bankAccount.Deposit(pln, m100);

            Assert.AreEqual(bankAccount.GetBalance(pln), new Money(200m, "PLN"));
        }
Esempio n. 3
0
        public void When_Account_Is_Closed_Any_Actions_Are_Forbidden_Test()
        {
            IBank    bank       = new Bank();
            Currency pln        = new Currency("PLN");
            var      currencies = new List <Currency>();

            currencies.Add(pln);
            Guid         id          = Guid.NewGuid();
            Guid         userId      = Guid.NewGuid();
            IBankAccount bankAccount = bank.CreateBankAccount(id, userId, currencies);

            bankAccount.Deposit(pln, new Money(1m, "PLN"));
            bankAccount.Deposit(pln, new Money(200m, "PLN"));
            bankAccount.Deposit(pln, new Money(300m, "PLN"));
            bankAccount.Deposit(pln, new Money(500m, "PLN"));
            bankAccount.VerifyAccount();
            bankAccount.Deposit(pln, new Money(1000m, "PLN"));
            bankAccount.Deposit(pln, new Money(2000m, "PLN"));
            bankAccount.Withdraw(pln, new Money(100m, "PLN"));
            bankAccount.Deposit(pln, new Money(3000m, "PLN"));
            bankAccount.Withdraw(pln, new Money(100m, "PLN"));
            bankAccount.Deposit(pln, new Money(5000m, "PLN"));
            bankAccount.Withdraw(pln, new Money(100m, "PLN"));

            bankAccount.CloseAccount();

            try
            {
                bankAccount.GetBalance(pln);
            }
            catch
            {
                Assert.IsTrue(true);
                return;
            }

            Assert.Fail();
        }