public PricePresentationModelBuilder(ICreateInstance<PricePresentationModel> pricePresentationModel, ICollectViewBuilders collectViewBuildersCollector, HeaderViewModelBuilder headerViewModelBuilder, FooterViewModelBuilder footerViewModelBuilder)
 {
     _pricePresentationModel = pricePresentationModel;
     _collectViewBuilders = collectViewBuildersCollector;
     _headerViewModelBuilder = headerViewModelBuilder;
     _footerViewModelBuilder = footerViewModelBuilder;
 }
        public void Setup()
        {
            var presentationModel = new CreateInstance<PricePresentationModel>();
            var presentationModelMock = new Mock<ICreateInstance<PricePresentationModel>>();
            presentationModelMock.Setup(x => x.Create()).Returns(new PricePresentationModel());

            var viewModelBuilderMock = new Mock<ICollectViewBuilders>();
            var headerViewModelBuilder = new HeaderViewModelBuilder();
            var footerViewModelBuilder = new FooterViewModelBuilder();
            var itemsToReturn = new ViewModel[] { new HeaderViewModel(), new FooterViewModel() };
            viewModelBuilderMock.Setup(x => x.GetViewModels(It.IsAny<Context>(),It.IsAny<IViewModelBuilder[]>())).Returns(itemsToReturn);

            _presentationModelBuilder = new PricePresentationModelBuilder(presentationModel, viewModelBuilderMock.Object, headerViewModelBuilder, footerViewModelBuilder);
        }