Пример #1
0
 public void NotTwittedPages_Ctor_Argument_TopQueryCount_Zero()
 {
     try
     {
         var pg = new NotTwittedPages(new PagesCollectionStub(), new RandomSelector(), null, 0);
         Assert.Fail("Очікувалося ArgumentException");
     }
     catch (ArgumentException ex)
     {
         Assert.IsTrue(ex.ParamName == "topQueryCount");
     }
 }
Пример #2
0
 public void NotTwittedPages_Ctor_Argument_RandomSelector_Null()
 {
     try
     {
         var pg = new NotTwittedPages(new PagesCollectionStub(), null, null, _TOP_QUERY_COUNT);
         Assert.Fail("Очікувалося ArgumentNullException");
     }
     catch (ArgumentNullException ex)
     {
         Assert.IsTrue(ex.ParamName == "randomSelector");
     }
 }
Пример #3
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");
        }
Пример #4
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");
        }
Пример #5
0
 public void NotTwittedPages_Ctor_Arguments_Normal()
 {
     var pg = new NotTwittedPages(new PagesCollectionStub(), new RandomSelector(), null, _TOP_QUERY_COUNT);
 }