//TODO add all the tests that duplicate the JewelItems tests to be mapping agnostic private SettingViewModelBuilder CreateDefaultSettingViewModelBuilder() { var settingManager = new FakeSettingManager(); var jewelryRepository = new FakeJewelRepository(settingManager); var diamondRepository = new FakeDiamondRepository(mapper); var webHelpers = MockRepository.GenerateStub <IWebHelpers>(); var customJewelForSetting = new CustomJewelPersistenceForSetting() { DiamondID = FIRST_DIAMOND_IN_REP, SettingID = SETTING_ID, }; var tabsForJewelDesignBuilder = new TabsForJewelDesignNavigationBuilder(customJewelForSetting, diamondRepository, jewelryRepository, webHelpers); var fakeRepository = new FakeJewelRepository(settingManager); var fileSystem = FakeFileSystem.MediaFileSystemForItemNumber("0101-15421"); var fakeTestimonialRepository = new FakeTestimonialRepository(mapper); var jewelryItemViewModelBuilder = new JewelryItemViewModelBuilder(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID, fakeRepository, fakeTestimonialRepository, fileSystem, mapper); var builder = new SettingViewModelBuilder(customJewelForSetting, tabsForJewelDesignBuilder, jewelryItemViewModelBuilder); return(builder); }
public void Setting_ShouldRenderTheViewWithTheRightModel() { //Arrange var controller = CreateDefaultJewelDesignController(); var customJewelForSetting = new CustomJewelPersistenceForSetting(); customJewelForSetting.DiamondID = 1; customJewelForSetting.SettingID = Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID; //Act var result = controller.Setting(customJewelForSetting); //Assert result.AssertViewRendered().WithViewData <SettingViewModel>(); }
public ActionResult Setting(CustomJewelPersistenceForSetting customJewelPersistenceForSetting) { var tabsForJewelNavigation = new TabsForJewelDesignNavigationBuilder(customJewelPersistenceForSetting, diamondRepository, jewelRepository, webHelpers); tabsForJewelNavigation.WhichTabToHighLight(NagivationTabType.ChooseSetting); jewelRepository.FilterMediaByMetal(customJewelPersistenceForSetting.MediaType == 0 ? JewelMediaType.WhiteGold : customJewelPersistenceForSetting.MediaType); var jewelryItemViewModelBuilder = new JewelryItemViewModelBuilder(customJewelPersistenceForSetting.SettingID, jewelRepository, testimonialRepository, fileSystem, mapper); var builder = new SettingViewModelBuilder(customJewelPersistenceForSetting, tabsForJewelNavigation, jewelryItemViewModelBuilder); var viewModel = builder.Build(); viewModel.PathBarItems = pathBarGenerator.GenerateUsing <UsingDynamicTitlePathBarResolver, dynamic>(viewModel); return(View(viewModel)); }
//TODO hard to code with current schema of tests public void Setting_ShouldTellTheRepositoryAboutTheMediaSet() { //Arrange var jewelRepository = MockRepository.GenerateMock <IJewelRepository>(); jewelRepository.Expect(x => x.FilterMediaByMetal(Arg <JewelMediaType> .Is.Equal(JewelMediaType.YellowGold))); var controller = CreateDefaultJewelDesignControllerWithCustomRepository(jewelRepository); var customJewelForSetting = new CustomJewelPersistenceForSetting(); customJewelForSetting.DiamondID = 1; customJewelForSetting.SettingID = Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID; //Act var result = controller.Setting(customJewelForSetting); //Assert result.AssertViewRendered().WithViewData <SettingViewModel>(); }
public SettingViewModelBuilder(CustomJewelPersistenceForSetting customJewelForSetting, TabsForJewelDesignNavigationBuilder tabsForJewelDesignBuilder, JewelryItemViewModelBuilder jewelryItemViewModelBuilder) { this.customJewelForSetting = customJewelForSetting; this.tabsForJewelDesignBuilder = tabsForJewelDesignBuilder; this.jewelryItemViewModelBuilder = jewelryItemViewModelBuilder; }
public ActionResult Setting(CustomJewelPersistenceForSetting customJewelPersistenceForSetting) { var tabsForJewelNavigation = new TabsForJewelDesignNavigationBuilder(customJewelPersistenceForSetting, diamondRepository, jewelRepository, webHelpers); tabsForJewelNavigation.WhichTabToHighLight(NagivationTabType.ChooseSetting); jewelRepository.FilterMediaByMetal(customJewelPersistenceForSetting.MediaType == 0 ? JewelMediaType.WhiteGold : customJewelPersistenceForSetting.MediaType); var jewelryItemViewModelBuilder = new JewelryItemViewModelBuilder(customJewelPersistenceForSetting.SettingID, jewelRepository,testimonialRepository ,fileSystem,mapper); var builder = new SettingViewModelBuilder(customJewelPersistenceForSetting, tabsForJewelNavigation, jewelryItemViewModelBuilder); var viewModel = builder.Build(); viewModel.PathBarItems = pathBarGenerator.GenerateUsing<UsingDynamicTitlePathBarResolver, dynamic>(viewModel); return View(viewModel); }
public SettingViewModelBuilder(CustomJewelPersistenceForSetting customJewelForSetting, TabsForJewelDesignNavigationBuilder tabsForJewelDesignBuilder, JewelryItemViewModelBuilder jewelryItemViewModelBuilder) { this.customJewelForSetting = customJewelForSetting; this.tabsForJewelDesignBuilder = tabsForJewelDesignBuilder; this.jewelryItemViewModelBuilder = jewelryItemViewModelBuilder; }
private SettingViewModelBuilder CreateDefaultSettingViewModelBuilderWithCustomModel(CustomJewelPersistenceForSetting customJewelForSetting) { var settingManager = new FakeSettingManager(); var jewelryRepository = new FakeJewelRepository(settingManager); var diamondRepository = new FakeDiamondRepository(mapper); var webHelpers = MockRepository.GenerateStub<IWebHelpers>(); var tabsForJewelDesignBuilder = new TabsForJewelDesignNavigationBuilder(customJewelForSetting, diamondRepository, jewelryRepository, webHelpers); var fakeRepository = new FakeJewelRepository(settingManager); var fileSystem = FakeFileSystem.MediaFileSystemForItemNumber("0101-15421"); var fakeTestimonialRepository = new FakeTestimonialRepository(mapper); var jewelryItemViewModelBuilder = new JewelryItemViewModelBuilder(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID, fakeRepository, fakeTestimonialRepository, fileSystem, mapper); var builder = new SettingViewModelBuilder(customJewelForSetting, tabsForJewelDesignBuilder, jewelryItemViewModelBuilder); return builder; }
public void Setting_ShouldTellTheRepositoryAboutTheMediaSet() { //Arrange var jewelRepository = MockRepository.GenerateMock<IJewelRepository>(); jewelRepository.Expect(x => x.FilterMediaByMetal(Arg<JewelMediaType>.Is.Equal(JewelMediaType.YellowGold))); var controller = CreateDefaultJewelDesignControllerWithCustomRepository(jewelRepository); var customJewelForSetting = new CustomJewelPersistenceForSetting(); customJewelForSetting.DiamondID = 1; customJewelForSetting.SettingID = Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID; //Act var result = controller.Setting(customJewelForSetting); //Assert result.AssertViewRendered().WithViewData<SettingViewModel>(); }
public void Setting_ShouldRenderTheViewWithTheRightModel() { //Arrange var controller = CreateDefaultJewelDesignController(); var customJewelForSetting = new CustomJewelPersistenceForSetting(); customJewelForSetting.DiamondID = 1; customJewelForSetting.SettingID = Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID; //Act var result = controller.Setting(customJewelForSetting); //Assert result.AssertViewRendered().WithViewData<SettingViewModel>(); }