private JewelDesignController CreateDefaultJewelDesignController()
        {
            var diamondRepository = new FakeDiamondRepository(mapper);
            var formatter         = MockRepository.GenerateStub <IJONFormatter>();
            var jewelryRepository = new FakeJewelRepository(new SettingManager());
            var webHelpers        = MockRepository.GenerateStub <IWebHelpers>();

            formatter.Stub(x => x.ToCaratWeight(Arg <decimal> .Is.Anything)).Return("Not important for this test");
            formatter.Stub(x => x.ToGramWeight(Arg <decimal> .Is.Anything)).Return("Not important for this test");
            formatter.Stub(x => x.ToMilimeter(Arg <decimal> .Is.Anything)).Return("Not important for this test");

            var fileSystem       = FakeFileSystem.MediaFileSystemForItemNumber();
            var xmlSourceFactory = new FakeXmlSourceFactory();
            var tabRepository    = TabsViewModelBuilderTests.CreateStubTabsRepository(TabTestsBase.TabKey);

            var diamondHelpBuilder = new DiamondHelpBuilder(new FakeXmlSourceFactory());

            var pathbarGenerator          = MockRepository.GenerateStub <IPathBarGenerator>();
            var fakeTestimonailRepository = new FakeTestimonialRepository(mapper);


            var controller = new JewelDesignController(diamondRepository, formatter, mapper, jewelryRepository, webHelpers,
                                                       xmlSourceFactory, fileSystem, diamondHelpBuilder, tabRepository, pathbarGenerator, fakeTestimonailRepository);

            return(controller);
        }
Example #2
0
        private OrderBuilder CreateDefaultOrderBuilder()
        {
            var jewelRepository   = new FakeJewelRepository(new FakeSettingManager());
            var diamondRepository = new FakeDiamondRepository(mapper);
            var shoppingCart      = MockRepository.GenerateStub <IShoppingCart>();

            shoppingCart.Stub(x => x.Items).Return(new List <ICartItem>()
            {
                FakeJewelCartItem(
                    Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID, Tests.SAMPLE_JEWEL_SIZE_725,
                    JewelMediaType.WhiteGold,
                    1000),
                FakeDiamondCartItem(
                    Tests.FAKE_DIAMOND_REPOSITORY_FIRST_ITEM_ID,
                    2000),
                FakeCustomJewelCartItem(
                    Tests.FAKE_DIAMOND_REPOSITORY_FIRST_ITEM_ID,
                    Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID, Tests.SAMPLE_JEWEL_SIZE_725, JewelMediaType.WhiteGold,
                    3000)
            });

            shoppingCart.Stub(x => x.TotalPrice).Return(6000);

            var authentication = MockRepository.GenerateStub <IAuthentication>();

            var builder = new OrderBuilder(shoppingCart, authentication, mapper);

            return(builder);
        }
        private ChooseSettingViewModelBuilder CreateDefaultChooseSettingViewModelBuilderWithChooseSettingModelAsAParameter(ChooseSettingViewModel chooseSettingViewModel)
        {
            var settingManager    = new FakeSettingManager();
            var tabsRepository    = TabsViewModelBuilderTests.CreateStubTabsRepository(JEWEL_DESIGN_TABKEY);
            var jewelryRepository = new FakeJewelRepository(settingManager);

            var fakeTabXmlFactory  = new FakeTabXmlFactory();
            var xmldoc_jeweldesign = fakeTabXmlFactory.JewelDesign3Tabs(JEWEL_DESIGN_TABKEY);


            var fileSystem = FakeFileSystem.MediaFileSystemForItemNumber("0101-15421");


            TabsViewModelBuilder tabsViewModelBuilder = new TabsViewModelBuilder(chooseSettingViewModel,
                                                                                 xmldoc_jeweldesign,
                                                                                 tabsRepository, jewelryRepository, fileSystem);

            var diamondRepository = new FakeDiamondRepository(mapper);
            var webHelpers        = MockRepository.GenerateStub <IWebHelpers>();

            var tabsForJewelDesignBuilder = new TabsForJewelDesignNavigationBuilder(chooseSettingViewModel,
                                                                                    diamondRepository, jewelryRepository,
                                                                                    webHelpers);


            var builder = new ChooseSettingViewModelBuilder(chooseSettingViewModel, tabsViewModelBuilder, tabsForJewelDesignBuilder);

            return(builder);
        }
Example #4
0
        public void Build_SettingabShouldReturnViewRouteAndCallTheRightRouteIfSettingIsPresent()
        {
            //Arrange
            var customJewel       = new CustomJewelPersistenceBase();
            var diamondRepository = new FakeDiamondRepository(mapper);
            var webHelpers        = MockRepository.GenerateMock <IWebHelpers>();
            var jewelRepository   = new FakeJewelRepository(new FakeSettingManager());

            customJewel.DiamondID = FIRST_DIAMOND_IN_REP;
            customJewel.SettingID = SETTING_ID;

            webHelpers.Expect(
                x =>
                x.RouteUrl(Arg <string> .Is.Equal("Setting"),
                           Arg <RouteValueDictionary> .Matches(d => (int)d["DiamondID"] == customJewel.DiamondID && (int)d["SettingID"] == customJewel.SettingID))).Return(
                "/jewelryitem/view/uri").Repeat.Any();


            var builder = new TabsForJewelDesignNavigationBuilder(customJewel, diamondRepository, jewelRepository, webHelpers);
            //Act
            var tabs = builder.Build();

            //Assert
            webHelpers.VerifyAllExpectations();

            tabs[1].ViewRoute.Should().Be("/jewelryitem/view/uri");
        }
        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);
        }
Example #6
0
        public void Build_SettingTabShouldReturnModifyRouteAndCallTheRightRouteIfSettingIsPresent()
        {
            //Arrange
            var customJewel       = new CustomJewelPersistenceBase();
            var diamondRepository = new FakeDiamondRepository(mapper);
            var webHelpers        = MockRepository.GenerateMock <IWebHelpers>();
            var jewelRepository   = new FakeJewelRepository(new FakeSettingManager());

            customJewel.DiamondID = FIRST_DIAMOND_IN_REP;
            customJewel.SettingID = SETTING_ID;

            webHelpers.Expect(
                x =>
                x.RouteUrl(Arg <string> .Is.Equal("ChooseSetting"),
                           Arg <RouteValueDictionary> .Is.Anything)).
            Return("/JewelDesign/DiamondSearch").Repeat.Any();


            var builder = new TabsForJewelDesignNavigationBuilder(customJewel, diamondRepository, jewelRepository, webHelpers);
            //Act
            var tabs = builder.Build();

            //Assert
            tabs[1].ModifyRoute.Should().Be("/JewelDesign/DiamondSearch");
            webHelpers.VerifyAllExpectations();
        }
Example #7
0
        public void Build_ShouldCallTheFilterMetalOnTheRepositoryWithTheCorrectMediaType()
        {
            //Arrange
            var shoppingCart = MockRepository.GenerateStub <IShoppingCart>();

            shoppingCart.Stub(x => x.Items).Return(new List <ICartItem>()
            {
                FakeJewelCartItem(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID, Tests.SAMPLE_JEWEL_SIZE_725, JewelMediaType.YellowGold, Tests.NUMBER_HAS_NO_MEANING_IN_THIS_CONTEXT)
            });
            shoppingCart.Stub(x => x.TotalPrice).Return(10000);

            var fakeJewel = new FakeJewelRepository(new FakeSettingManager()).GetJewelByID(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID);

            var jewelryRepository = MockRepository.GenerateMock <IJewelRepository>();

            jewelryRepository.Stub(x => x.GetJewelByID(Arg <int> .Is.Anything)).Return(fakeJewel);
            jewelryRepository.Expect(x => x.FilterMediaByMetal(Arg <JewelMediaType> .Is.Equal(JewelMediaType.YellowGold)))
            .Repeat.Once();

            var diamondRepository = new FakeDiamondRepository(mapper);

            var cartItemViewModelBuilder = new CartItemViewModelBuilder(jewelryRepository, diamondRepository, mapper);

            var authentication = MockRepository.GenerateStub <IAuthentication>();
            var builder        = new ShoppingCartViewModelBuilder(shoppingCart, jewelryRepository, cartItemViewModelBuilder, authentication, mapper);
            //Act
            var viewModel = builder.Build();

            //Assert
            jewelryRepository.VerifyAllExpectations();
        }
Example #8
0
        public void MapJewelsToInTabContainers_ShouldReturnHasMovieToBeFalseWhenMovieFileIsNotPresent()
        {
            //Arrange
            var settingManager    = new FakeSettingManager();
            var tabsRepository    = CreateStubTabsRepository(TabKey);
            var jewelryRepository = new FakeJewelRepository(settingManager);

            var fileSystem = FakeFileSystem.MediaFileSystemForItemNumber(new Dictionary <string, MockFileData>()
            {
                { @"C:\Users\maMLUka\Documents\jewelryonnet\internet-sites\jon-images\jewelry\0101-15421-pic-wg.jpg", new MockFileData("") },
                { @"C:\Users\maMLUka\Documents\jewelryonnet\internet-sites\jon-images\jewelry\0101-15421-icon-wg.jpg", new MockFileData("") },
                { @"C:\Users\maMLUka\Documents\jewelryonnet\internet-sites\jon-images\jewelry\0101-15421-hires-wg.jpg", new MockFileData("") },
                { @"C:\Users\maMLUka\Documents\jewelryonnet\internet-sites\jon-images\jewelry\0101-15421-hand-wg.jpg", new MockFileData("") },
//                                                        {@"C:\Users\maMLUka\Documents\jewelryonnet\internet-sites\jon-images\jewelry\0101-15421-mov-wg.flv",new MockFileData("")}
            });

            TabsViewModelBuilder tabsViewModelBuilder = new TabsViewModelBuilder(TAB_KEY, TAB_ID1, xmldoc_regular3tabs,
                                                                                 tabsRepository, jewelryRepository, fileSystem);

            var viewModel = tabsViewModelBuilder.Build();

            //Act

            var tabContainer1 = viewModel.JewelryInTabContainersCollection[0];

            //Assert

            tabContainer1.HasMovie.Should().BeFalse();
        }
Example #9
0
        private ShoppingCartItemsFactory CreateDefaultShoppingCartItemsFactory()
        {
            var jewelryRepository = new FakeJewelRepository(new FakeSettingManager());
            var diamondRepository = new FakeDiamondRepository(mapper);
            var factory           = new ShoppingCartItemsFactory(jewelryRepository, diamondRepository);

            return(factory);
        }
Example #10
0
        private TabsForJewelDesignNavigationBuilder CreateDefaultTabsForJewelDesignBuilderWithPersistenceAsAParameter(CustomJewelPersistenceBase customJewel)
        {
            var diamondRepository = new FakeDiamondRepository(mapper);
            var webHelpers        = MockRepository.GenerateStub <IWebHelpers>();
            var jewelRepository   = new FakeJewelRepository(new FakeSettingManager());
            var builder           = new TabsForJewelDesignNavigationBuilder(customJewel, diamondRepository, jewelRepository, webHelpers);

            return(builder);
        }
Example #11
0
        private BestOffer CreateDefaultBestOffer(IUserMailer mailer)
        {
            var settingManager  = new FakeSettingManager();
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());

            var bestOffer = new BestOffer(mailer, settingManager, jewelRepository, mapper);

            return(bestOffer);
        }
Example #12
0
        private CartItemViewModelBuilder CartItemViewModelBuilderWithDiamondCartItem()
        {
            var jewelRepostory    = new FakeJewelRepository(new FakeSettingManager());
            var diamondRepository = new FakeDiamondRepository(mapper);


            var builder = new CartItemViewModelBuilder(jewelRepostory, diamondRepository, mapper);

            return(builder);
        }
        //TODO add two tests for width and weight NA testing



        #region Helpers

        private JewelryItemViewModelBuilder JewelryItemViewModelBuilderFactoryMethod()
        {
            var settingManager            = new FakeSettingManager();
            var fakeRepository            = new FakeJewelRepository(settingManager);
            var fakeTestimonailRepository = new FakeTestimonialRepository(mapper);
            var fileSystem = FakeFileSystem.MediaFileSystemForItemNumber("0101-15421");

            var builder = new JewelryItemViewModelBuilder(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID, fakeRepository, fakeTestimonailRepository, fileSystem, mapper);

            return(builder);
        }
        private TabsController CreateDefaultTabsController()
        {
            var tabsRepository    = new TabsRepository(fakeXmlSourceFactory);
            var jewelryRepository = new FakeJewelRepository(new FakeSettingManager());

            var fileSystem       = FakeFileSystem.MediaFileSystemForItemNumber();
            var pathBarGenerator = MockRepository.GenerateStub <IPathBarGenerator>();
            var tabsController   = new TabsController(tabsRepository, jewelryRepository, fileSystem, fakeXmlSourceFactory, pathBarGenerator, mapper);

            return(tabsController);
        }
        private JewelryItemViewModelBuilder JewelryItemViewModelBuilderFactoryMethodWithJewelID(int jewelD)
        {
            var settingManager = new FakeSettingManager();
            var fakeRepository = new FakeJewelRepository(settingManager);

            var fileSystem = FakeFileSystem.MediaFileSystemForItemNumber("0101-15421");
            var fakeTestimonailRepository = new FakeTestimonialRepository(mapper);

            var builder = new JewelryItemViewModelBuilder(jewelD, fakeRepository, fakeTestimonailRepository, fileSystem, mapper);

            return(builder);
        }
Example #16
0
        public void Build_ShouldThrowAnExceptionIfTheJewelIdDoesntExists()
        {
            //Arrange
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());;

            var doesntExists = Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID + 1000;
            var model        = fixture.Build <EmailRingModel>().With(x => x.ID, doesntExists).CreateAnonymous();

            var builder = new EmailRingEmailTemplateViewModelBuilder(model, jewelRepository, mapper);

            //Act
            builder.Build();
        }
        private DiamondViewModelBuilder CreateDefaultDiamondViewModelBuilderWithCustomJewelPersistenceAsAParameter(CustomJewelPersistenceInDiamond customJewel)
        {
            var diamondRepository         = new FakeDiamondRepository(mapper);
            var jewelryRepository         = new FakeJewelRepository(new FakeSettingManager());
            var diamondHelpBuilder        = new DiamondHelpBuilder(new FakeXmlSourceFactory());
            var webHelpers                = MockRepository.GenerateStub <IWebHelpers>();
            var tabsForJewelDesignBuilder = new TabsForJewelDesignNavigationBuilder(customJewel, diamondRepository,
                                                                                    jewelryRepository, webHelpers);

            var builder = new DiamondViewModelBuilder(customJewel, tabsForJewelDesignBuilder, diamondRepository, diamondHelpBuilder, mapper);

            return(builder);
        }
Example #18
0
        private TabsViewModelBuilder CreateDefaultTabsViewModelBuilderWithCustomInTabFilter()
        {
            var settingManager    = new FakeSettingManager();
            var tabsRepository    = CreateStubTabsRepository(TabKey);
            var jewelryRepository = new FakeJewelRepository(settingManager);

            var fileSystem = FakeFileSystem.MediaFileSystemForItemNumber("0101-15421");

            TabsViewModelBuilder tabsViewModelBuilder = new TabsViewModelBuilder(TAB_KEY, TAB_ID1, xmldoc_tabswithintabfilter,
                                                                                 tabsRepository, jewelryRepository, fileSystem);

            return(tabsViewModelBuilder);
        }
Example #19
0
        private TabsViewModelBuilder CreateDefaultTabsViewModelBuilderWithSpecialTabs()
        {
            var settingManager    = new FakeSettingManager();
            var tabsRepository    = CreateStubTabsRepository(TabKey);
            var jewelryRepository = new FakeJewelRepository(settingManager);

            var fileSystem = FakeFileSystem.MediaFileSystemForItemNumber("0101-15421");

            TabsViewModelBuilder tabsViewModelBuilder = new TabsViewModelBuilder(TAB_KEY, SPECIAL_TABID1, xmldoc_specialtab,
                                                                                 tabsRepository, jewelryRepository, fileSystem);

            return(tabsViewModelBuilder);
        }
Example #20
0
        private ShoppingCartViewModelBuilder CreateDefaultShoppingCartViewModelBuilderWithShoppingCartAsParameter(IShoppingCart shoppingCart)
        {
            var jewelryRepository = new FakeJewelRepository(new FakeSettingManager());
            var diamondRepository = new FakeDiamondRepository(mapper);

            var cartItemViewModelBuilder = new CartItemViewModelBuilder(jewelryRepository, diamondRepository,
                                                                        mapper);

            var authentication = MockRepository.GenerateStub <IAuthentication>();

            var builder = new ShoppingCartViewModelBuilder(shoppingCart, jewelryRepository, cartItemViewModelBuilder, authentication, mapper);

            return(builder);
        }
        private OrderConfirmationEmailTemplateViewModelBuilder CreateDefaultOrderConfirmationEmailTemplateViewModelBuilder(
            string orderNumber, CheckoutDetailsModel model)
        {
            var shoppingCart = FakeFactory.ShoppingCartWith3Items();


            var jewelRepostory    = new FakeJewelRepository(new FakeSettingManager());
            var diamondRepository = new FakeDiamondRepository(mapper);
            var cartItemBuilder   = new CartItemViewModelBuilder(jewelRepostory, diamondRepository, mapper);


            var builder = new OrderConfirmationEmailTemplateViewModelBuilder(orderNumber, model, shoppingCart, cartItemBuilder);

            return(builder);
        }
Example #22
0
        private ShoppingCartViewModelBuilder CreateDefaultShoppingCartViewModelBuilderWithCustomAuthentication(IAuthentication authentication)
        {
            var jewelryRepository = new FakeJewelRepository(new FakeSettingManager());
            var diamondRepository = new FakeDiamondRepository(mapper);
            var shoppingCart      = FakeFactory.ShoppingCartWith3Items();


            var cartItemViewModelBuilder = new CartItemViewModelBuilder(jewelryRepository, diamondRepository,
                                                                        mapper);



            var builder = new ShoppingCartViewModelBuilder(shoppingCart, jewelryRepository, cartItemViewModelBuilder, authentication, mapper);

            return(builder);
        }
Example #23
0
        private TabsForJewelDesignNavigationBuilder CreateWithDiamondIDTabsForJewelDesignBuilder()
        {
            var customJewel       = new CustomJewelPersistenceBase();
            var diamondRepository = new FakeDiamondRepository(mapper);
            var webHelpers        = MockRepository.GenerateStub <IWebHelpers>();
            var jewelRepository   = new FakeJewelRepository(new FakeSettingManager());

            webHelpers.Stub(x => x.RouteUrl(Arg <string> .Is.Anything, Arg <RouteValueDictionary> .Is.Anything)).Return(
                "not important for this test");

            customJewel.DiamondID = FIRST_DIAMOND_IN_REP;

            var builder = new TabsForJewelDesignNavigationBuilder(customJewel, diamondRepository, jewelRepository, webHelpers);

            return(builder);
        }
Example #24
0
        public void Build_ShouldMapTheModelToTheTemplateViewModel()
        {
            //Arrange
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());
            var model           = fixture.Build <EmailRingModel>().With(x => x.ID, Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID).CreateAnonymous();

            var builder = new EmailRingEmailTemplateViewModelBuilder(model, jewelRepository, mapper);
            //Act
            var template = builder.Build();

            //Assert
            template.YourName.Should().Be(model.YourName);
            template.YourEmail.Should().Be(model.YourEmail);
            template.ID.Should().Be(model.ID.ToString());
            template.Message.Should().Be(model.Message);
            template.FriendEmail.Should().Be(model.FriendEmail);
            template.FriendName.Should().Be(model.FriendName);
        }
Example #25
0
        private EndViewModelBuilder CreateDefaultEditViewModelBuilderWithPresistenceAs(CustomJewelPersistenceInEndPage customJewelPersistenceInEndPage)
        {
            var diamondRepository = new FakeDiamondRepository(mapper);

            var jewelryRepository = new FakeJewelRepository(new SettingManager());
            var webHelpers        = MockRepository.GenerateStub <IWebHelpers>();



            var tabsForJewelDesignBuilder = new TabsForJewelDesignNavigationBuilder(customJewelPersistenceInEndPage, diamondRepository,
                                                                                    jewelryRepository, webHelpers);


            var builder = new EndViewModelBuilder(customJewelPersistenceInEndPage, tabsForJewelDesignBuilder, diamondRepository,
                                                  jewelryRepository, mapper);

            return(builder);
        }
        private JewelryItemController CreateJewelryItemControllerWithCustomerMailer(IUserMailer mailer)
        {
            var fileSystem        = FakeFileSystem.MediaFileSystemForItemNumber("0101-15421");
            var settingManager    = new FakeSettingManager();
            var jewelryRepository = new FakeJewelRepository(settingManager);
            var webHelpers        = GetWebHelpers();
            var mediaSetBuilder   = GetMediaSetBuilder();
            var bestOffer         = MockRepository.GenerateStub <IBestOffer>();

            var wishListPersistence       = MockRepository.GenerateStub <IWishListPersistence>();
            var fakeTestimonailRepository = new FakeTestimonialRepository(mapper);
            var pathbarGenerator          = MockRepository.GenerateStub <IPathBarGenerator>();

            var controller = new JewelryItemController(jewelryRepository, mediaSetBuilder, webHelpers, fileSystem, bestOffer,
                                                       wishListPersistence, fakeTestimonailRepository, mailer, pathbarGenerator, mapper);

            return(controller);
        }
        private JewelryItemController CreateDefaultJewelryItemControllerSetup()
        {
            var fileSystem                = FakeFileSystem.MediaFileSystemForItemNumber(Tests.FAKE_JEWEL_ITEMNUMBER);
            var settingManager            = new FakeSettingManager();
            var jewelryRepository         = new FakeJewelRepository(settingManager);
            var webHelpers                = GetWebHelpers();
            var mediaSetBuilder           = GetMediaSetBuilder();
            var fakeTestimonailRepository = new FakeTestimonialRepository(mapper);
            var bestOffer = MockRepository.GenerateStub <IBestOffer>();

            var wishListPersistence = MockRepository.GenerateStub <IWishListPersistence>();
            var fakeMailer          = MockRepository.GenerateStub <IUserMailer>();
            var pathbarGenerator    = MockRepository.GenerateStub <IPathBarGenerator>();

            var controller = new JewelryItemController(jewelryRepository, mediaSetBuilder, webHelpers, fileSystem, bestOffer, wishListPersistence, fakeTestimonailRepository, fakeMailer, pathbarGenerator, mapper);

            return(controller);
        }
        public void Build_ShouldMapItemNumberCorrectly()
        {
            //Arrange
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());

            var wishListPersistence = MockRepository.GenerateStub <IWishListPersistence>();

            wishListPersistence.Stub(x => x.GetItemsOnWishList()).Return(new List <int>()
            {
                Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID
            });

            var builder = new WishListViewModelBuilder(wishListPersistence, jewelRepository, mapper);
            //Act
            var viewModel = builder.Build();

            //Assert
            viewModel.Items[0].ItemNumber.Should().Be(Tests.FAKE_JEWEL_ITEMNUMBER);
        }
        public void Build_ShouldHaveOneItemInTheListWhenWishListPersistenceIsGivenWithOneItem()
        {
            //Arrange
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());

            var wishListPersistence = MockRepository.GenerateStub <IWishListPersistence>();

            wishListPersistence.Stub(x => x.GetItemsOnWishList()).Return(new List <int>()
            {
                Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID
            });

            var builder = new WishListViewModelBuilder(wishListPersistence, jewelRepository, mapper);
            //Act
            var viewModel = builder.Build();

            //Assert
            viewModel.Items.Should().HaveCount(1);
        }
Example #30
0
        public void Build_ShouldMapTheJewelDetailsToTheViewModel()
        {
            //Arrange
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());;

            var model = fixture.Build <EmailRingModel>().With(x => x.ID, Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID).CreateAnonymous();

            var builder = new EmailRingEmailTemplateViewModelBuilder(model, jewelRepository, mapper);
            //Act
            var template = builder.Build();
            //Assert
            var jewel = FakeFactory.FirstJewelInRepository;

            template.Description.Should().Be(jewel.Title);
            template.ItemNumber.Should().Be(jewel.ItemNumber);
            template.Price.Should().Be(Tests.AsMoney(jewel.Price));
            template.Icon.Should().Be(jewel.Media.IconURLForWebDisplay);
            template.MediaSet.Should().Be(jewel.Media.MediaSet);
        }