Exemplo n.º 1
0
        public void NotTwittedAnimated_Normal_Find_Result_Index_0()
        {
            var anim = _PrepareAnimatedCollection(false, false);

            //Здесь нам нужен особенный (не рандомный) селектор, который будет давать те индексы которые нужно для граничных условий
            var rndStub = new RandomSelectorStub
            {
                Result = 0                  //он будет выдавать индекс 0 для выбора
            };

            //в нашей тест-коллекции есть страницы с null-полем TweetDate.
            //Их ровно 4 шт, и две заполненные.

            var notTwittedAnimated = new NotTwittedAnimated(anim, rndStub, _TOP_QUERY_COUNT, new kawaii.twitter.core.SelectLogic.URL.FolderFromURL(), new kawaii.twitter.core.SelectLogic.BlobName.Formatter());

            //случайный селектор работает по 3 блобам
            string url        = "https://kawaii-mobile.com/2011/12/code-geass/";
            var    resultImgs = notTwittedAnimated.GetAnimatedImagesForPage(url).Result;

            Assert.IsNotNull(resultImgs, "Результат не повинен бути null");
            Assert.IsTrue(resultImgs.Length == 1);

            var resultImg = resultImgs[0];

            Assert.IsNotNull(resultImg);

            Assert.IsTrue(resultImg.BlobName == _Img1.BlobName, "Очікувався результат _Img1.BlobName");
        }
Exemplo n.º 2
0
        public void PageSelector_Select_NoPagesForResult()
        {
            var pages = _PrepareSitePagesEmptyCollection();

            //Здесь нам нужен особенный (не рандомный) селектор, который будет давать те индексы которые нужно для граничных условий
            var rndStub = new RandomSelectorStub
            {
                Result = 0                  //он будет выдавать индекс 0 для выбора
            };

            var pg         = new PageSelector(pages, rndStub, null, _MAX_PAGES_FOR_RANDOM);
            var resultPage = pg.GetPageForTwitting().Result;

            Assert.IsNull(resultPage, "Очікувався null");
        }
Exemplo n.º 3
0
        public void PageSelector_Normal_Select_2()
        {
            var pages = _PrepareSitePagesCollection();

            //Здесь нам нужен особенный (не рандомный) селектор, который будет давать те индексы которые нужно для граничных условий
            var rndStub = new RandomSelectorStub
            {
                Result = 2                  //он будет выдавать индекс 0 для выбора
            };

            var pg         = new PageSelector(pages, rndStub, null, _MAX_PAGES_FOR_RANDOM);
            var resultPage = pg.GetPageForTwitting().Result;

            Assert.IsNotNull(resultPage);
            //должно найти страницу HameFura
            Assert.IsTrue(resultPage.URL == SamplePages.PageSpeedGrapher.URL, "Очукувалася сторінка SpeedGrapher");
        }
Exemplo n.º 4
0
        public void NotTwittedAnimated_Find_Empty_Result()
        {
            var anim = _PrepareAnimatedCollection(true, false);                 //будет пустая коллекция

            //Здесь нам нужен особенный (не рандомный) селектор, который будет давать те индексы которые нужно для граничных условий
            var rndStub = new RandomSelectorStub
            {
                Result = 0
            };

            var notTwittedAnimated = new NotTwittedAnimated(anim, rndStub, _TOP_QUERY_COUNT, new kawaii.twitter.core.SelectLogic.URL.FolderFromURL(), new kawaii.twitter.core.SelectLogic.BlobName.Formatter());

            string url        = "https://kawaii-mobile.com/2017/01/shuumatsu-no-izetta/";
            var    resultImgs = notTwittedAnimated.GetAnimatedImagesForPage(url).Result;

            Assert.IsNull(resultImgs, "Результат повинен бути null");
        }
Exemplo n.º 5
0
        //[TestMethod]
        //[Description("Тест нормальной работы получения новых страниц, которые ни разу не твитили")]
        //[TestCategory("NotTwittedAnimated")]
        public void NotTwittedAnimated_Normal_Find_Result_Index_2()
        {
            var anim = _PrepareAnimatedCollection(false, false);

            //Здесь нам нужен особенный (не рандомный) селектор, который будет давать те индексы которые нужно для граничных условий
            var rndStub = new RandomSelectorStub
            {
                Result = 2                  //он будет выдавать индекс 2 для выбора
            };

            //var notTwittedAnimated = new NotTwittedAnimated(anim, rndStub, _TOP_QUERY_COUNT);

            //случайный селектор работает по 3 блобам
            //var resultImg = notTwittedAnimated.GetAnimatedImageForTwitting().Result;

            //Assert.IsNotNull(resultImg, "Результат не повинен бути null");
            //Assert.IsTrue(resultImg.BlobName == _Img3.BlobName, "Очікувався результат _Img3.BlobName");
        }
Exemplo n.º 6
0
        public void PageSelector_Halloween_Normal_2019()
        {
            var pages = _PrepareSitePagesCollection();

            //Здесь нам нужен особенный (не рандомный) селектор, который будет давать те индексы которые нужно для граничных условий
            var rndStub = new RandomSelectorStub
            {
                Result = 3                  //он будет выдавать индекс 3 для выбора
            };

            var pg         = new PageSelector(pages, rndStub, kawaii.twitter.db.SpecialDays.HALLOWEEN, _MAX_PAGES_FOR_RANDOM);
            var resultPage = pg.GetPageForTwitting().Result;

            Assert.IsNotNull(resultPage);

            //должно найти страницу SamplePages.PageHalloween2013 - см.порядок в ф-ции _PrepareSitePagesCollection
            Assert.IsTrue(resultPage.URL == SamplePages.PageHalloween2019.URL, "Очукувалася сторінка PageHalloween2019");
        }
Exemplo n.º 7
0
        public void NotTwittedPages_No_Not_Twitted()
        {
            var pages = _PrepareSitePagesCollection(false, true);               //второй аргумент - приготовить коллекцию так, что у всех будет дата твита

            //Здесь нам нужен особенный (не рандомный) селектор, который будет давать те индексы которые нужно для граничных условий
            var rndStub = new RandomSelectorStub
            {
                Result = 0                  //он будет выдавать индекс 0 для выбора
            };

            //в нашей тест-коллекции у всех заполнено поле TweetDate.
            //Ответом будет null

            var notTwittedPages = new NotTwittedPages(pages, rndStub, null, _TOP_QUERY_COUNT);

            var resultPage = notTwittedPages.GetPageForTwitting().Result;

            Assert.IsNull(resultPage, "Результат повинен бути null");
        }
Exemplo n.º 8
0
        public void NotTwittedPages_Normal_Find_Result_Index_2()
        {
            var pages = _PrepareSitePagesCollection(false, false);

            //Здесь нам нужен особенный (не рандомный) селектор, который будет давать те индексы которые нужно для граничных условий
            var rndStub = new RandomSelectorStub
            {
                Result = 2                  //он будет выдавать индекс 0 для выбора
            };

            //в нашей тест-коллекции есть страницы с null-полем TweetDate.
            //Их ровно 4 шт, и две заполненные.

            var notTwittedPages = new NotTwittedPages(pages, rndStub, null, _TOP_QUERY_COUNT);

            var resultPage = notTwittedPages.GetPageForTwitting().Result;

            Assert.IsNotNull(resultPage, "Результат не повинен бути null");
            Assert.IsTrue(resultPage.URL == _PageGleipnir.URL, "Очікувався результат _PageGleipnir.URL");
        }