コード例 #1
0
        public void NegativeTestAddFunds()
        {
            var account = new MetalAccount("acc1", "client1", MetalType.Aurum, 0, 1500M);

            try
            {
                account.AddFunds(-50M);

                Assert.Fail();
            }
            catch (InvalidOperationException)  { }

            try
            {
                account.AddFunds(1000M);

                Assert.Fail();
            }
            catch (InvalidOperationException) { }

            account.CloseAccount();
            var result2 = account.AddFunds(1500M);

            Assert.AreEqual(false, result2);
            Assert.AreEqual(0M, account.AccountBalance);
            Assert.AreEqual(0L, account.MetalBalance);
        }
コード例 #2
0
        public void PositiveTestAddFunds()
        {
            var account = new MetalAccount("acc1", "client1", MetalType.Argentum, 0, 500M);
            var result1 = account.AddFunds(1000M);
            var result2 = account.AddFunds(0M);

            Assert.AreEqual(true, result1);
            Assert.AreEqual(true, result2);
            Assert.AreEqual(1000M, account.AccountBalance);
            Assert.AreEqual(2L, account.MetalBalance);
        }
コード例 #3
0
        public void AddFoundsToMetalAccount()
        {
            MetalAccount testAccount = new MetalAccount(2, "Test2", 00.00, false, 10.00, "Uran", 100);

            testAccount.AddFunds(9999900);

            const double expectedSum    = 10000900;
            const double expectedGramms = 100009;

            Assert.IsTrue(Math.Abs(testAccount.Sum - expectedSum) <= 1e-10, $"Фактическая сумма на счете {testAccount.Sum} отличается от ожидаемой {expectedSum}");

            Assert.IsTrue(Math.Abs(testAccount.GrammsMetal - expectedGramms) <= 1e-7, $"Фактическое количество грамм на счете {testAccount.GrammsMetal} отличается от ожидаемого {expectedGramms}");
        }
コード例 #4
0
        public void PositiveTestWithdrawFunds()
        {
            var account = new MetalAccount("acc1", "client1", MetalType.Platinum, 0, 2500M);

            account.AddFunds(5000M);
            var result1 = account.WithdrawFunds(2500M);
            var result2 = account.WithdrawFunds(0);

            Assert.AreEqual(true, result1);
            Assert.AreEqual(true, result2);
            Assert.AreEqual(2500M, account.AccountBalance);
            Assert.AreEqual(1L, account.MetalBalance);
        }