示例#1
0
        public void Cannot_Retrieve_Image_Data_For_Invalid_ID()
        {
            // Организация - создание имитированного хранилища
            Mock <IPhoneRepository> mock = new Mock <IPhoneRepository>();

            mock.Setup(m => m.Phones).Returns(new List <Phone> {
                new Phone {
                    PhoneId = 1, Mark = "Марка1"
                },
                new Phone {
                    PhoneId = 2, Mark = "Марка2"
                }
            }.AsQueryable());

            // Организация - создание контроллера
            PhonesController controller = new PhonesController(mock.Object);

            // Действие - вызов метода действия GetImage()
            ActionResult result = controller.GetImage(10);

            // Утверждение
            Assert.IsNull(result);
        }
示例#2
0
        public void Can_Retrieve_Image_Data()
        {
            // Организация - создание объекта phone с данными изображения
            Phone phone = new Phone
            {
                PhoneId       = 2,
                Mark          = "Марка2",
                ImageData     = new byte[] { },
                ImageMimeType = "image/png"
            };

            // Организация - создание имитированного хранилища
            Mock <IPhoneRepository> mock = new Mock <IPhoneRepository>();

            mock.Setup(m => m.Phones).Returns(new List <Phone>
            {
                new Phone {
                    PhoneId = 1, Mark = "Марка1"
                },
                phone,
                new Phone {
                    PhoneId = 3, Mark = "Марка3"
                }
            }.AsQueryable());

            // Организация - создание контроллера
            PhonesController controller = new PhonesController(mock.Object);

            // Действие - вызов метода действия GetImage()
            ActionResult result = controller.GetImage(2);

            // Утверждение
            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result, typeof(FileResult));
            Assert.AreEqual(phone.ImageMimeType, ((FileResult)result).ContentType);
        }