예제 #1
0
        private CartItemViewModelBuilder CartItemViewModelBuilderWithCustomJewelItem()
        {
            var shoppingCart = MockRepository.GenerateStub <IShoppingCart>();

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

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


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

            return(builder);
        }
        public void Build_ShouldSetTheTabNAvigationModelProperty()
        {
            //Arrange
            var customJewel       = new CustomJewelPersistenceForDiamondSearch();
            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");

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

            var builder = new DiamondSearchViewModelBuilder(customJewel, tabsForJewelDesignBuilder);
            //Act
            var viewModel = builder.Build();

            //Assert
            viewModel.TabsForJewelDesignNavigation.Should().HaveCount(3);
        }
        public void Build_ShouldReturnAJavaScriptJsonInitializerWithReportForTheSearchInitBecauseItWasSpecifiedInTheRouteDic()
        {
            var customJewel       = new CustomJewelPersistenceForDiamondSearch();
            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(
                Tests.STRING_THAT_HAS_NO_MEANING_IN_THIS_CONTEXT);

            customJewel.Report = Tests.STRING_THAT_IS_ASSERTED_BUT_HAS_NO_MEANING;

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

            var builder = new DiamondSearchViewModelBuilder(customJewel, tabsForJewelDesignBuilder);
            //Act
            var viewModel = builder.Build();

            //Assert
            viewModel.JSONClientScriptInitializer["Report"].Should().Be(Tests.STRING_THAT_IS_ASSERTED_BUT_HAS_NO_MEANING);
        }
예제 #4
0
        private ShoppingCartViewModelBuilder CreateDefaultShoppingCartViewModelBuilder()
        {
            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,
                                  Tests.NUMBER_HAS_NO_MEANING_IN_THIS_CONTEXT)
            });

            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);
        }
        public void Build_ShouldReturnAJavaScriptJsonInitializerWithSettingIDBecauseItWasSpecifiedInTheRouteDic()
        {
            var customJewel       = new CustomJewelPersistenceForDiamondSearch();
            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(
                Tests.STRING_THAT_HAS_NO_MEANING_IN_THIS_CONTEXT);

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

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

            var builder = new DiamondSearchViewModelBuilder(customJewel, tabsForJewelDesignBuilder);
            //Act
            var viewModel = builder.Build();

            //Assert
            viewModel.JSONClientScriptInitializer["SettingID"].Should().Be(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID.ToString());
        }
        private ReviewOrderViewModelBuilder CreateDefaultReviewOrderViewModelBuilder()
        {
            var checkoutDetailsModel = DefaultCheckoutDetailsModel();


            var shoppingCart = MockRepository.GenerateStub <IShoppingCart>();

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

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

            var builder = new ReviewOrderViewModelBuilder(checkoutDetailsModel, shoppingCart, cartItemViewModelBuilder, mapper);

            return(builder);
        }
예제 #7
0
        //TODO add the tests for the mapping to be mapper agnostic

        private EndViewModelBuilder CreateDefaultEditViewModelBuilder()
        {
            var diamondRepository = new FakeDiamondRepository(mapper);

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

            var customJewelInEndPage = new CustomJewelPersistenceInEndPage();

            customJewelInEndPage.DiamondID = 1;
            customJewelInEndPage.SettingID = Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID;
            customJewelInEndPage.MediaType = JewelMediaType.YellowGold;
            customJewelInEndPage.Size      = Tests.SAMPLE_JEWEL_SIZE_725;

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


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

            return(builder);
        }