public MachineLogic(IDrinkMakerProtocol drinkMakerProtocol,
                     IBeverageQuantityChecker beverageQuantityChecker,
                     IEmailNotifier emailNotifier)
 {
     this.drinkMakerProtocol      = drinkMakerProtocol;
     this.cashier                 = new Cashier();
     this.repository              = new Repository();
     this.beverageQuantityChecker = beverageQuantityChecker;
     this.emailNotifier           = emailNotifier;
 }
        public void Services()
        {
            Mock <IEmailNotifier>           emailNotifierMock   = new Mock <IEmailNotifier>();
            Mock <IBeverageQuantityChecker> beverageCheckerMock = new Mock <IBeverageQuantityChecker>();
            IEmailNotifier           emailNotifier   = emailNotifierMock.Object;
            IBeverageQuantityChecker beverageChecker = beverageCheckerMock.Object;

            var command = new CoffeeCommand();
            var cmdType = command.GetType().ToString();

            beverageCheckerMock.Setup(p => p.IsEmpty(cmdType)).Returns(true);
            Assert.IsTrue(beverageChecker.IsEmpty(cmdType));

            var cm = new CoffeeMachine(emailNotifier, beverageChecker);

            cm.Order(command, 1);

            beverageCheckerMock.Verify(p => p.IsEmpty(cmdType), Times.AtLeastOnce);
            emailNotifierMock.Verify(p => p.NotifyMissingDrink(cmdType), Times.Once);
            Assert.Pass();
        }
Beispiel #3
0
 public CoffeeMachineComander(IBeverageQuantityChecker checker,IEmailNotifier emailNotifier)
 {
     _checker = checker;
     _emailNotifier = emailNotifier;
 }
Beispiel #4
0
 public CoffeeMachineComanderForTest(CoffeeMachineComander CoffeeMachineComander, IBeverageQuantityChecker mock, IEmailNotifier emailMock)
 {
     _coffeeMachineComander = CoffeeMachineComander;
     _mock = mock;
     _emailMock = emailMock;
 }
 public CoffeeMachine(IRepository repository, IBeverageQuantityChecker beverageQuantityChecker, IEmailNotifier emailNotifier)
 {
     _beverageQuantityChecker = beverageQuantityChecker;
     _emailNotifier           = emailNotifier;
     _repository = repository;
 }
Beispiel #6
0
 public DrinkMakerShould()
 {
     _dummyMoneyModule             = Mock.Of <IMoneyModule>();
     _dummyEmailNotifier           = Mock.Of <IEmailNotifier>();
     _dummyBeverageQuantityChecker = Mock.Of <IBeverageQuantityChecker>();
 }
Beispiel #7
0
 public DrinkMaker(IMoneyModule moneyModule, IEmailNotifier emailNotifier, IBeverageQuantityChecker beverageQuantityChecker)
 {
     _moneyModule             = moneyModule;
     _emailNotifier           = emailNotifier;
     _beverageQuantityChecker = beverageQuantityChecker;
 }
Beispiel #8
0
 public CoffeeMachine(IEmailNotifier emailNotifier, IBeverageQuantityChecker beverageQuantityChecker)
 {
     _EmailNotifier           = emailNotifier;
     _BeverageQuantityChecker = beverageQuantityChecker;
 }
 public CoffeeMachine(IEmailNotifier emailNotifier = null, IBeverageQuantityChecker beverageQuantityChecker = null)
 {
     Report                   = new Report();
     _emailNotifier           = emailNotifier;
     _beverageQuantityChecker = beverageQuantityChecker;
 }
Beispiel #10
0
 public Logic(IProvideToday todayProvider, IBeverageQuantityChecker beverageQuantityChecker, IEmailNotifier emailNotifier)
 {
     _todayProvider           = todayProvider;
     _beverageQuantityChecker = beverageQuantityChecker;
     _emailNotifier           = emailNotifier;
 }