public PizzaMaker(IIngredientsProvider ingredientsProvider, IRawPizzaBuilder rawPizzaBuilder, IOven oven) { _ingredientsProvider = ingredientsProvider; _rawPizzaBuilder = rawPizzaBuilder; _oven = oven; ReadyForMakePizza = true; }
public void PizzaMakerSetOvenToTheProperTemperature() { // ARRANGE IIngredientsProvider stubIngredientsProvider = MockRepository.GenerateStub <IIngredientsProvider>(); IRawPizzaBuilder stubRawPizzaBUilder = MockRepository.GenerateStub <IRawPizzaBuilder>(); // this won't work. We can't verify this call. If you comment out the property settings in the method under test, this test won't fail //IOven mockOven = MockRepository.GenerateStub<IOven>(); //mockOven.Temperature = 300; //mockOven.Temperature = 150; //this is the proper way to check settings on property IOven mockOven = MockRepository.GenerateMock <IOven>(); mockOven.Expect(oven => oven.Temperature = 300); mockOven.Expect(oven => oven.Temperature = 150); // ACT var sut = new PizzaMaker(stubIngredientsProvider, stubRawPizzaBUilder, mockOven); var pizza = sut.MakePizza(); // ASSERT mockOven.VerifyAllExpectations(); }