public void Refill_Plus12000() { AccumulationAccount AA1 = new AccumulationAccount(id: 1, client: "Ivanov", firstBalance: 12000, interestRate: 0.12); AA1.Refill(12000); Assert.AreEqual(24000, AA1.Balance, "Баланс счета неверный"); }
public void Refill_0_Plus_MaxDouble() { AccumulationAccount AA1 = new AccumulationAccount(id: 1, client: "Ivanov", firstBalance: 0, interestRate: 0.12); AA1.Refill(double.MaxValue); Assert.AreEqual(double.MaxValue, AA1.Balance, "Баланс счета неверный"); }
public void Refill_ArchivAccount() { AccumulationAccount AA1 = new AccumulationAccount(id: 1, client: "Ivanov", firstBalance: 0, interestRate: 0.12); AA1.CloseBankAccount(); Assert.Throws <InvalidOperationException>(() => AA1.Refill(double.MaxValue)); }
public void InterestCapitalizationCloseAccount() { AccumulationAccount account = new AccumulationAccount(Guid.NewGuid(), 1000, 10, 10); account.Close(); account.InterestCapitalization(); }
public void TestRefill() { AccumulationAccount AA1 = new AccumulationAccount(id: 1, client: "Ivanov", firstBalance: 120000, interestRate: 0.12); AccumulationAccount AA2 = new AccumulationAccount(id: 2, client: "Ivanov", firstBalance: 120000, interestRate: 0.12); AA1.Refill(1000); Assert.AreEqual(121000, AA1.Balance); }
public void AddHugeFounds() { AccumulationAccount testAccount = new AccumulationAccount(2, "Test2", 00.00, false, 100.00, 10.1); testAccount.AddFunds(1000000000000); const double expectedSum = 1000000000000; Assert.IsTrue(Math.Abs(testAccount.Sum - expectedSum) <= 1e-7, $"Фактическая сумма на счете {testAccount.Sum} отличается от ожидаемой {expectedSum}"); }
public void WithdrawFoundsМoreFirstContributionToAccumulationAccount() { AccumulationAccount testAccount = new AccumulationAccount(2, "Test2", 1100, false, 100.00, 20.1); string expectedExceptionMessage = $"Невозможно провести списание. Остаток на счете {testAccount.Sum} не может быть меньше первоначального взноса{testAccount.FirstСontribution}"; var factException = Assert.Throws <InvalidOperationException>(() => testAccount.WithdrawFunds(1100)); Assert.That(factException.Message, Is.EqualTo(expectedExceptionMessage)); }
public void WithdrawFoundsBalanceEqualFirstContributionToAccumulationAccount() { AccumulationAccount testAccount = new AccumulationAccount(2, "Test2", 1100, false, 100.00, 20.1); testAccount.WithdrawFunds(1000.00); const double expectedSum = 100.00; Assert.IsTrue(Math.Abs(testAccount.Sum - expectedSum) <= 1e-7, $"Фактическая сумма на счете {testAccount.Sum} отличается от ожидаемой {expectedSum}"); }
public void EditFirstСontributionWhithCheepFounds() { AccumulationAccount testAccount = new AccumulationAccount(2, "Test2", 1000.00, false, 100.00, 20.1); testAccount.EditFirstСontribution(00.01); const double expectedFirstСontribution = 00.01; Assert.IsTrue(Math.Abs(testAccount.FirstСontribution - expectedFirstСontribution) <= 1e-7, $"Фактическая сумма первоначального взноса {testAccount.FirstСontribution} отличается от ожидаемой {expectedFirstСontribution}"); }
public void TransactionToNullSenderAccount() { SavingAccount accountSender = null; AccumulationAccount accountRecipient = new AccumulationAccount(2, "Test2", 00.00, false, 100.22, 10.1); const string expectedExceptionMessage = "sender\r\nИмя параметра: Переданое значение NULL"; var factException = Assert.Throws <ArgumentNullException>(() => Bank.Transaction(accountSender, accountRecipient, 100.11)); Assert.That(factException.Message, Is.EqualTo(expectedExceptionMessage)); }
public void CapitalizationPercetnsWhithMinimumDates() { AccumulationAccount testAccount = new AccumulationAccount(2, "Test2", 300099, false, 100.00, 20.1); testAccount.CapitalizationPercetns(1, 365); const double expectedSum = 165.26; Assert.IsTrue(Math.Abs(testAccount.Sum - expectedSum) <= 1e-5, $"Фактическая сумма {testAccount.Sum} отличается от ожидаемой {expectedSum}"); }
public void EditPercentRateWhithZeroPercents() { AccumulationAccount testAccount = new AccumulationAccount(2, "Test2", 1000.00, false, 100.00, 20.1); testAccount.EditPercentRate(00.00); const double expectedPercentRate = 00.00; Assert.IsTrue(Math.Abs(testAccount.PercentRate - expectedPercentRate) <= 1e-7, $"Фактическая процентная ставка {testAccount.PercentRate} отличается от ожидаемой {expectedPercentRate}"); }
public void EditPercentRateOnClosedAccount() { AccumulationAccount testAccount = new AccumulationAccount(2, "Test2", 100.00, true, 100.00, 20.1); string expectedExceptionMessage = $"Счет {testAccount.Id} закрыт, операция не может быть произведена."; var factException = Assert.Throws <InvalidOperationException>(() => testAccount.EditPercentRate(50)); Assert.That(factException.Message, Is.EqualTo(expectedExceptionMessage)); }
public void EditPercentRateWithOverHugePercents() { AccumulationAccount testAccount = new AccumulationAccount(2, "Test2", 100.00, false, 100.00, 20.1); const string expectedExceptionMessage = "Заданный аргумент находится вне диапазона допустимых значений.\r\nИмя параметра: Процентная ставка не может быть больше 100 %"; var factException = Assert.Throws <ArgumentOutOfRangeException>(() => testAccount.EditPercentRate(101)); Assert.That(factException.Message, Is.EqualTo(expectedExceptionMessage)); }
public void CapitalizationPercetnsWhithNegativeDaysInYear() { AccumulationAccount testAccount = new AccumulationAccount(2, "Test2", 1000, false, 100.00, 20.1); const string expectedExceptionMessage = "Заданный аргумент находится вне диапазона допустимых значений.\r\nИмя параметра: Введено неверное количество дней в году, доступные значения 365 или 356 дней"; var factException = Assert.Throws <ArgumentOutOfRangeException>(() => testAccount.CapitalizationPercetns(20, 368)); Assert.That(factException.Message, Is.EqualTo(expectedExceptionMessage)); }
public void EditFirstСontributionWithZeroFounds() { AccumulationAccount testAccount = new AccumulationAccount(2, "Test2", 100.00, false, 100.00, 20.1); const string expectedExceptionMessage = "Заданный аргумент находится вне диапазона допустимых значений.\r\nИмя параметра: Невозможно изменить сумму первоначального взноса. Сумма первоначального взнос не может быть меньше 0,01."; var factException = Assert.Throws <ArgumentOutOfRangeException>(() => testAccount.EditFirstСontribution(0)); Assert.That(factException.Message, Is.EqualTo(expectedExceptionMessage)); }
public void CapitalizationPercetnsWhithExtraNegativeDaysInMonth() { AccumulationAccount testAccount = new AccumulationAccount(2, "Test2", 1000, false, 100.00, 20.1); const string expectedExceptionMessage = "Заданный аргумент находится вне диапазона допустимых значений.\r\nИмя параметра: Количество дней в месяце не может быть меньше или равно нулю"; var factException = Assert.Throws <ArgumentOutOfRangeException>(() => testAccount.CapitalizationPercetns(-35, 365)); Assert.That(factException.Message, Is.EqualTo(expectedExceptionMessage)); }
public void PositiveTransaction() { SavingAccount accountSender = new SavingAccount(1, "Test1", 1000.11, false); AccumulationAccount accountRecipient = new AccumulationAccount(2, "Test2", 00.00, false, 100.22, 10.1); Bank.Transaction(accountSender, accountRecipient, 100.11); const double expectedAccountSenderSum = 900.00; const double expectedaccountRecipientSum = 100.11; Assert.IsTrue(Math.Abs(accountSender.Sum - expectedAccountSenderSum) <= 1e-7, $"Фактическая сумма на счете {accountSender.Sum} отличается от ожидаемой {expectedAccountSenderSum}"); Assert.IsTrue(Math.Abs(accountRecipient.Sum - expectedaccountRecipientSum) <= 1e-7, $"Фактическая сумма на счете {accountRecipient.Sum} отличается от ожидаемой {expectedaccountRecipientSum}"); }
public void Refill_MaxDouble() { AccumulationAccount AA1 = new AccumulationAccount(id: 1, client: "Ivanov", firstBalance: double.MaxValue, interestRate: 0.12); Assert.Throws <ArgumentOutOfRangeException>(() => AA1.Refill(double.MaxValue)); }
public void Refill_Minus12000() { AccumulationAccount AA1 = new AccumulationAccount(id: 1, client: "Ivanov", firstBalance: 12000, interestRate: 0.12); Assert.Throws <ArgumentOutOfRangeException>(() => AA1.Refill(-12000)); }
///Cнять меньше, чем первоначальная сумма взона. Для накопительных банковсхи счетов /// public void WriteOffAccumulationAccount() { AccumulationAccount AA1 = new AccumulationAccount(id: 1, client: "Ivanov", firstBalance: 12000, interestRate: 0.12); Assert.Throws <ArgumentOutOfRangeException>(() => AA1.WriteOff(500)); }
public bool CreateAccumulationAccount() { AccumulationAccount accumulationAccount = new AccumulationAccount(); return(AddAccount(accumulationAccount)); }