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();
        }
예제 #2
0
        public void GetItemByID_ShouldSetTheJewelPriceLikeTheSpecialPriceBecauseItemIsOnSpecial()
        {
            //Arrange
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());

            //Act
            var jewel = jewelRepository.GetJewelByID(Tests.FAKE_JEWELRY_WITH_ALL_NON_DEFAULT_BEHAVIER);

            //Assert
            jewel.Price.Should().Be(jewel.SpecialPrice);
        }
예제 #3
0
        public void GetItemByID_ShouldSetTheJewelPriceLikeARegularPriceBecauseItemIsNotSpecialAndUserIsNotADealer()
        {
            //Arrange
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());

            //Act
            var jewel = jewelRepository.GetJewelByID(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID);

            //Assert
            jewel.Price.Should().Be(jewel.RegularPrice);
        }
예제 #4
0
        public void GetItemByID_ShouldReturnTrueForInSpecialForTheItemThatContainsAllNonDefaults()
        {
            //Arrange
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());

            //Act
            var jewel = jewelRepository.GetJewelByID(Tests.FAKE_JEWELRY_WITH_ALL_NON_DEFAULT_BEHAVIER);

            //Assert
            jewel.IsSpecial.Should().BeTrue();
        }
예제 #5
0
        public void GetItemByID_ShouldReturnTheRightID()
        {
            //Arrange
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());

            //Act
            var jewel = jewelRepository.GetJewelByID(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID);

            //Assert
            jewel.ID.Should().Be(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID);
        }
예제 #6
0
        public void GetItemByID_ShouldReturnFalseForInSpecial()
        {
            //Arrange
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());

            //Act
            var jewel = jewelRepository.GetJewelByID(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID);

            //Assert
            jewel.IsSpecial.Should().BeFalse();
        }
예제 #7
0
        public void GetItemByID_ShouldSetTheRightDealerPrice()
        {
            //Arrange
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());

            //Act
            var jewel = jewelRepository.GetJewelByID(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID);

            //Assert
            jewel.DealerPrice.Should().Be(7000);
        }
예제 #8
0
        public void GetItemByID_ShouldSetTheJewelPriceLikeTheSpecialPriceBecauseItemIsOnSpecial()
        {
            //Arrange
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());

            //Act
            var jewel = jewelRepository.GetJewelByID(Tests.FAKE_JEWELRY_WITH_ALL_NON_DEFAULT_BEHAVIER);

            //Assert
            jewel.Price.Should().Be(jewel.SpecialPrice);
        }
예제 #9
0
        public void GetItemByID_ShouldSetTheJewelPriceLikeARegularPriceBecauseItemIsNotSpecialAndUserIsNotADealer()
        {
            //Arrange
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());

            //Act
            var jewel = jewelRepository.GetJewelByID(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID);

            //Assert
            jewel.Price.Should().Be(jewel.RegularPrice);
        }
예제 #10
0
        public void GetItemByID_ShouldReturnFalseForInSpecial()
        {
            //Arrange
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());

            //Act
            var jewel = jewelRepository.GetJewelByID(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID);

            //Assert
            jewel.IsSpecial.Should().BeFalse();
        }
예제 #11
0
        public void GetItemByID_ShouldReturnTheRightID()
        {
            //Arrange
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());

            //Act
            var jewel = jewelRepository.GetJewelByID(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID);

            //Assert
            jewel.ID.Should().Be(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID);
        }
예제 #12
0
        public void GetItemByID_ShouldReturnTrueForInSpecialForTheItemThatContainsAllNonDefaults()
        {
            //Arrange
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());

            //Act
            var jewel = jewelRepository.GetJewelByID(Tests.FAKE_JEWELRY_WITH_ALL_NON_DEFAULT_BEHAVIER);

            //Assert
            jewel.IsSpecial.Should().BeTrue();
        }
예제 #13
0
        public void GetItemByID_ShouldSetTheRightDealerPrice()
        {
            //Arrange
            var jewelRepository = new FakeJewelRepository(new FakeSettingManager());

            //Act
            var jewel = jewelRepository.GetJewelByID(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID);

            //Assert
            jewel.DealerPrice.Should().Be(7000);
        }
        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();
        }
        public void Build_ShouldMapIconCorrectly()
        {
            //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].Icon.Should().Be("/jon-images/jewel/0101-15421-icon-wg.jpg");
        }
        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);
        }
        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);
        }
        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);
        }
        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);
        }
        public void Build_DiamondTabShouldReturnModifyRouteAndCallTheRightRouteIfDiamondIsPresent()
        {
            //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;

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

            var builder = new TabsForJewelDesignNavigationBuilder(customJewel, diamondRepository, jewelRepository, webHelpers);
            //Act
            var tabs = builder.Build();
            //Assert
            tabs[0].ModifyRoute.Should().Be("/JewelDesign/DiamondSearch");
            webHelpers.VerifyAllExpectations();
        }
        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;
        }
예제 #22
0
 public static Jewel Jewel()
 {
     var jewelRepository = new FakeJewelRepository(new FakeSettingManager());
     return jewelRepository.GetJewelByID(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID);
 }
        private JewelryItemViewModelBuilder JewelryItemViewModelBuilderFactoryMethod( Dictionary<string, MockFileData> files )
        {
            var settingManager = new FakeSettingManager();
            var fakeRepository = new FakeJewelRepository(settingManager);

            var fileSystem = FakeFileSystem.MediaFileSystemForItemNumber(files);
            var fakeTestimonailRepository = new FakeTestimonialRepository(mapper);

            var builder = new JewelryItemViewModelBuilder(Tests.FAKE_JEWELRY_REPOSITORY_FIRST_ITEM_ID, fakeRepository,fakeTestimonailRepository, fileSystem,mapper);
            return builder;
        }
        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;
        }
        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 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;
        }
        private JewelryItemController CreateJewelryItemControllerWithCustomWishListPersistence(
            IWishListPersistence wishListPersistence)
        {
            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 fakeTestimonailRepository = new FakeTestimonialRepository(mapper);
            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;
        }
        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;
        }
        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;
        }
        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();
        }
        private TabsViewModelBuilder CreateDefaultTabsViewModelBuilderWithAllMetalFilter()
        {
            var settingManager = new FakeSettingManager();
            var tabsRepository = CreateStubTabsRepository(TabKey);
            var jewelryRepository = new FakeJewelRepository(settingManager);

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

            var model = new TabsViewModel()
                            {
                                MetalFilter = JewelMediaType.All,
                                TabKey = TabKey,
                                TabId = TabID1

                            };

            TabsViewModelBuilder tabsViewModelBuilder = new TabsViewModelBuilder(model, xmldoc_regular3tabs,
                                                                                 tabsRepository, jewelryRepository, fileSystem);
            return tabsViewModelBuilder;
        }
예제 #32
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 CartItemViewModelBuilder CartItemViewModelBuilderWithJewelCartItem()
        {
            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 jewelRepostory = new FakeJewelRepository(new FakeSettingManager());
            var diamondRepository = new FakeDiamondRepository(mapper);

            var builder = new CartItemViewModelBuilder(jewelRepostory, diamondRepository, mapper);
            return builder;
        }
        private CartItemViewModelBuilder CartItemViewModelBuilderWithDiamondCartItem()
        {
            var jewelRepostory = new FakeJewelRepository(new FakeSettingManager());
            var diamondRepository = new FakeDiamondRepository(mapper);

            var builder = new CartItemViewModelBuilder(jewelRepostory, diamondRepository, 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;
        }
예제 #36
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;
        }