public void AnimatedSelectorWithExcludeLast_SelectImage_Most_Recent_Excluded() { //тест масиви готуємо від 2 до 10, це надасть більше надійності for (int len = 2; len < 10; len++) { AnimatedImage[] imgs = _PrepareTestArray(len, out DateTime freshDate); //важный момент чтобы мы не перемудрили - и дата была в массиве int freshCount = 0; for (int e = 0; e < imgs.Length; e++) { if (imgs[e].TweetDate == freshDate) { freshCount++; } } Assert.IsTrue(freshCount == 1); Assert.IsTrue(imgs.Length == len); var selector = new AnimatedSelectorWithExcludeLast(); int testCount = 100; for (int i = 0; i < testCount; i++) { var result = selector.SelectImage(imgs); Assert.IsNotNull(result); Assert.IsTrue(result.TweetDate != freshDate, "Дата не не повинна бути найновішою датою у масиві"); } } }
public void AnimatedSelectorWithExcludeLast_SelectImage_EmptyArray_Exception() { try { var selector = new AnimatedSelectorWithExcludeLast(); selector.SelectImage(new db.AnimatedImage[0]); Assert.Fail("Очікувалося ArgumentNullException"); } catch (ArgumentNullException ex) { Assert.IsTrue(ex.ParamName == "images"); } }
public void AnimatedSelectorWithExcludeLast_SelectImage_ArrayOneItem_Result() { var img = new db.AnimatedImage { BlobName = "test:slug", TweetDate = null }; var imgs = new db.AnimatedImage[] { img }; var selector = new AnimatedSelectorWithExcludeLast(); var result = selector.SelectImage(imgs); Assert.AreSame(img, result, "Очікувалось повернення об'єкту img"); }