Example #1
0
        public void GetItemsByDynamicSQL_ShouldReturnTheRightAmoutOfItems()
        {
            //Arrange
            var dynamicSQL = DynamicSQLWhereObject();

            settingManager.Stub(x => x.GetJewelryBaseWebPath()).Return("/jon-images/jewel/");

            JewelRepository jewelRepository = new JewelRepository(settingManager);

            //Act
            var jewelrylist = jewelRepository.GetJewelsByDynamicSQL(dynamicSQL);

            //Assert
            jewelrylist.Should().HaveCount(10);
        }
Example #2
0
        public void Pages_ShouldReturnTheCorrectNumberOfPagesInTheLastPage()
        {
            //Arrange
            var dynamicSQL = DynamicSQLWhereObject();

            settingManager.Stub(x => x.GetJewelryBaseWebPath()).Return("/jon-images/jewel/");

            JewelRepository jewelRepository = new JewelRepository(settingManager);

            jewelRepository.ItemsPerPage(3);
            jewelRepository.Page(4);
            //Act

            var jewelrylist = jewelRepository.GetJewelsByDynamicSQL(dynamicSQL);

            //Assert
            jewelrylist.Should().HaveCount(10 - 3 * 3);
        }
Example #3
0
        public void FilterJewelryItemsBy_ShouldOnlyReturnTheRightMetalMediaWhiteGold()
        {
            //Arrange
            var dynamicSQL = DynamicSQLWhereObject();

            settingManager.Stub(x => x.GetJewelryBaseWebPath()).Return("/jon-images/jewel/");

            JewelRepository jewelRepository = new JewelRepository(settingManager);

            //Act

            jewelRepository.FilterMediaByMetal(JewelMediaType.WhiteGold);

            var jewelrylist = jewelRepository.GetJewelsByDynamicSQL(dynamicSQL);

            //Assert

            jewelrylist.Should().OnlyContain(x => x.Media.IconURLForWebDisplay.Contains("wg")).And.HaveCount(9);
        }
Example #4
0
        public void TotalItems_ShouldReturnTheTotalNumbersOfItems()
        {
            //Arrange
            var dynamicSQL = DynamicSQLWhereObject();

            settingManager.Stub(x => x.GetJewelryBaseWebPath()).Return("/jon-images/jewel/");

            JewelRepository jewelRepository = new JewelRepository(settingManager);

            //Act

            var jewelrylist = jewelRepository.GetJewelsByDynamicSQL(dynamicSQL);

            var totalitems = jewelRepository.TotalItems;

            //Assert

            totalitems.Should().Be(10);
        }
Example #5
0
        public void FilterJewelryItemsBy_ShouldOnlyReturnYellowGoldMetalString()
        {
            //Arrange
            var dynamicSQL = DynamicSQLWhereObject();

            settingManager.Stub(x => x.GetJewelryBaseWebPath()).Return("/jon-images/jewel/");

            JewelRepository jewelRepository = new JewelRepository(settingManager);

            //Act

            jewelRepository.FilterMediaByMetal(JewelMediaType.YellowGold);

            var jewelrylist = jewelRepository.GetJewelsByDynamicSQL(dynamicSQL);

            //Assert

            jewelrylist.Should().OnlyContain(x => x.MetalFullName() == "Yellow Gold 18 Karat").And.HaveCount(9);
        }
Example #6
0
        public void FilterJewelryItemsBy_ShouldOnlyReturnTheRightMetalMediaAllMetals()
        {
            //Arrange
            var dynamicSQL = DynamicSQLWhereObject();

            settingManager.Stub(x => x.GetJewelryBaseWebPath()).Return("/jon-images/jewel/");

            JewelRepository jewelRepository = new JewelRepository(settingManager);

            //Act

            jewelRepository.FilterMediaByMetal(JewelMediaType.All);

            var jewelrylist = jewelRepository.GetJewelsByDynamicSQL(dynamicSQL);

            //Assert

            jewelrylist.Should().HaveCount(10);
        }
Example #7
0
        public void CurrentPage_ShouldReturnTheCurrentPage()
        {
            //Arrange
            var dynamicSQL = DynamicSQLWhereObject();

            settingManager.Stub(x => x.GetJewelryBaseWebPath()).Return("/jon-images/jewel/");

            JewelRepository jewelRepository = new JewelRepository(settingManager);

            jewelRepository.ItemsPerPage(3);
            jewelRepository.Page(2);
            //Act

            var jewelrylist = jewelRepository.GetJewelsByDynamicSQL(dynamicSQL);

            var currectpage = jewelRepository.CurrentPage;

            //Assert

            currectpage.Should().Be(2);
        }
Example #8
0
        public void OrderJewelryItemsBy_ShouldReturnTheItemsInTheCorrectOrderByFilterPriceDesc()
        {
            //Arrange
            var dynamicSQL = DynamicSQLWhereObject();

            settingManager.Stub(x => x.GetJewelryBaseWebPath()).Return("/jon-images/jewel/");

            JewelRepository jewelRepository = new JewelRepository(settingManager);

            DynamicOrderBy orderBy = new DynamicOrderBy("price", "desc");

            //Act
            jewelRepository.OrderJewelryItemsBy(orderBy);

            var jewelrylist = jewelRepository.GetJewelsByDynamicSQL(dynamicSQL);
            //Assert
            var first = jewelrylist[0].Price;
            var last  = jewelrylist[jewelrylist.Count - 1].Price;

            first.Should().Be(7500);
            last.Should().Be(1500);
        }