public void GivenNoCoinsHaveBeenInserted_WhenUpdate_ThenInsertCoinShouldBeDisplayed() { IVendingMachineDisplay vendingMachineDisplay = Mocker.CreateInstance <VendingMachineDisplay>(); ICoinCollection coinCollection = new CoinCollection(); var expectedString = Resources.Strings.InsertCoin; vendingMachineDisplay.Update(coinCollection); vendingMachineDisplay.Display.Should().Be(expectedString); Mocker.Verify <IDisplayWriter>(d => d.Write(expectedString), Times.Once); }
public void GivenANickelHasBeenInserted_WhenUpdate_Then5CentsShouldBeDisplayed() { IVendingMachineDisplay vendingMachineDisplay = Mocker.CreateInstance <VendingMachineDisplay>(); ICoinCollection coinCollection = new CoinCollection() { new Nickle() }; var expectedString = string.Format(Resources.Strings.DisplayCoinTotal, 0.05); vendingMachineDisplay.Update(coinCollection); vendingMachineDisplay.Display.Should().Be(expectedString); Mocker.Verify <IDisplayWriter>(d => d.Write(expectedString), Times.Once); }
public void InsertCoin(CoinEnum coinValue) { var coin = _coinFactory.Create(coinValue); if (coin is InvalidCoin) { _coinReturn.AddCoin(coin); } else { _coinSlot.AddCoin(coin); _vendingMachineDisplay.Update(_coinSlot); } }