Ejemplo n.º 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);
        }
Ejemplo n.º 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);
        }
Ejemplo n.º 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);
        }
Ejemplo n.º 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);
        }
Ejemplo n.º 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);
        }
Ejemplo n.º 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);
        }
Ejemplo n.º 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);
        }
Ejemplo n.º 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);
        }