public void RemoveMoneyFromAccountDoesReturnValue()
        {
            ICard card;

            card = new MasterCard("5555555555555555", 1000M, 4322, new DateTime(2030, 10, 5));
            Assert.AreEqual(100m, card.RemoveFromBalance(100m));
        }
        public void RemoveMoneyFromAccountReturnsAmountBack(decimal expected)
        {
            ICard card;

            card = new MasterCard("5555555555555555", 1000M, 4322, new DateTime(2030, 10, 5));
            Assert.AreEqual(expected, card.RemoveFromBalance(expected));
        }
        public void RemoveMoneyFromAccountDoesNotThrow()
        {
            ICard card;

            card = new MasterCard("5555555555555555", 1000M, 4322, new DateTime(2030, 10, 5));
            Assert.DoesNotThrow(() => card.RemoveFromBalance(100m));
        }
        public void CanDrawAllMoneyOut(decimal startingAndPulled)
        {
            ICard card;

            card = new MasterCard("5555555555555555", startingAndPulled, 4322, new DateTime(2030, 10, 5));
            card.RemoveFromBalance(startingAndPulled);

            Assert.AreEqual(0, card.GetBalance());
        }
        public void RemovedMoneyGetsRemovedFromAccount(decimal expectedToDraw)
        {
            ICard   card;
            decimal startingBalance = 1000M;

            card = new MasterCard("5555555555555555", startingBalance, 4322, new DateTime(2030, 10, 5));
            card.RemoveFromBalance(expectedToDraw);
            decimal expectedResult = startingBalance - expectedToDraw;

            Assert.AreEqual(expectedResult, card.GetBalance());
        }