public void TestBuildsCorrectCoinForGivenSizeAndWeight(Type expectedType, CoinSize coinSize)
        {
            CoinFactory coinFactory = new CoinFactory();
            ICoin coin = coinFactory.BuildCoin(coinSize);

            Assert.IsInstanceOf(expectedType, coin);
        }
Esempio n. 2
0
        public async Task <IActionResult> Edit(int id, [Bind("CoinSizeId,Size")] CoinSize coinSize)
        {
            if (id != coinSize.CoinSizeId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(coinSize);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!CoinSizeExists(coinSize.CoinSizeId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction("Index"));
            }
            return(View(coinSize));
        }
        public void TestBuildsCorrectCoinForGivenSizeAndWeight(Type expectedType, CoinSize coinSize)
        {
            CoinFactory coinFactory = new CoinFactory();
            ICoin       coin        = coinFactory.BuildCoin(coinSize);

            Assert.IsInstanceOf(expectedType, coin);
        }
        public void TestAcceptCallsBuildOnCoinFactoryWithSizeAndWeightPassed(CoinSize coinSize)
        {
            MockCoinFactory mockCoinFactory = new MockCoinFactory();
            CoinAccepter coinAccepter = new CoinAccepter(mockCoinFactory, new MockCoinPurse(), new MockCoinReturn());
            coinAccepter.Accept(coinSize);

            Assert.AreEqual(1, mockCoinFactory.NumberOfTimesBuildCoinCalled);
            Assert.AreEqual(coinSize, mockCoinFactory.LastSizeAndWeightPassed);
        }
        public void Accept(CoinSize coinSize)
        {
            ICoin receivedCoin = CoinFactory.BuildCoin(coinSize);

            if (receivedCoin.Value >= FiveCents)
                CoinPurse.AddCoin(receivedCoin);
            else
                CoinReturn.AddCoin(receivedCoin);
        }
        public void TestAcceptCallsBuildOnCoinFactoryWithSizeAndWeightPassed(CoinSize coinSize)
        {
            MockCoinFactory mockCoinFactory = new MockCoinFactory();
            CoinAccepter    coinAccepter    = new CoinAccepter(mockCoinFactory, new MockCoinPurse(), new MockCoinReturn());

            coinAccepter.Accept(coinSize);

            Assert.AreEqual(1, mockCoinFactory.NumberOfTimesBuildCoinCalled);
            Assert.AreEqual(coinSize, mockCoinFactory.LastSizeAndWeightPassed);
        }
Esempio n. 7
0
        public async Task <IActionResult> Create([Bind("CoinSizeId,Size")] CoinSize coinSize)
        {
            if (ModelState.IsValid)
            {
                _context.Add(coinSize);
                await _context.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            return(View(coinSize));
        }
        public void Accept(CoinSize coinSize)
        {
            ICoin receivedCoin = CoinFactory.BuildCoin(coinSize);

            if (receivedCoin.Value >= FiveCents)
            {
                CoinPurse.AddCoin(receivedCoin);
            }
            else
            {
                CoinReturn.AddCoin(receivedCoin);
            }
        }
        public ICoin BuildCoin(CoinSize coinSize)
        {
            switch (coinSize)
            {
                case CoinSize.Small:
                    return new Penny();
                case CoinSize.Tiny:
                    return new Dime();
                case CoinSize.Medium:
                    return new Nickel();
                case CoinSize.Large:
                    return new Quarter();
                default:
                    break;
            }

            return new NullCoin();
        }
Esempio n. 10
0
        public ICoin BuildCoin(CoinSize coinSize)
        {
            switch (coinSize)
            {
            case CoinSize.Small:
                return(new Penny());

            case CoinSize.Tiny:
                return(new Dime());

            case CoinSize.Medium:
                return(new Nickel());

            case CoinSize.Large:
                return(new Quarter());

            default:
                break;
            }

            return(new NullCoin());
        }
Esempio n. 11
0
 private void TestClickingButtonPassesCorrectCoinSizeToCoinAccepter(CoinSize expectedCoinSize, Button buttonToClick, MockCoinAccepter mockCoinAccepter)
 {
     buttonToClick.PerformClick();
     Assert.AreEqual(expectedCoinSize, mockCoinAccepter.LastCoinSizePassedToAccept);
 }
Esempio n. 12
0
 public void Accept(CoinSize coinSize)
 {
     LastCoinSizePassedToAccept = coinSize;
 }
 public ICoin BuildCoin(CoinSize coinSize)
 {
     LastSizeAndWeightPassed = coinSize;
     NumberOfTimesBuildCoinCalled++;
     return CoinToReturn;
 }
 public void Accept(CoinSize coinSize)
 {
     LastCoinSizePassedToAccept = coinSize;
 }
 public ICoin BuildCoin(CoinSize coinSize)
 {
     LastSizeAndWeightPassed = coinSize;
     NumberOfTimesBuildCoinCalled++;
     return(CoinToReturn);
 }
 private void TestClickingButtonPassesCorrectCoinSizeToCoinAccepter(CoinSize expectedCoinSize, Button buttonToClick, MockCoinAccepter mockCoinAccepter)
 {
     buttonToClick.PerformClick();
     Assert.AreEqual(expectedCoinSize, mockCoinAccepter.LastCoinSizePassedToAccept);
 }
 public void TestEnumValues(CoinSize coinSize, int expectedValue)
 {
     Assert.AreEqual(expectedValue, coinSize.GetHashCode());
 }