Files
eShopOnWeb/tests/UnitTests/Web/Controllers/CatalogControllerGetImage.cs
2017-07-28 23:27:41 -04:00

84 lines
2.5 KiB
C#

using ApplicationCore.Exceptions;
using ApplicationCore.Interfaces;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Mvc;
using Microsoft.eShopWeb.Controllers;
using Microsoft.Extensions.Logging;
using Moq;
using Xunit;
namespace UnitTests
{
//public class CatalogControllerGetImage
//{
// private Mock<IImageService> _mockImageService = new Mock<IImageService>();
// private Mock<IAppLogger<CatalogController>> _mockLogger = new Mock<IAppLogger<CatalogController>>();
// private CatalogController _controller;
// private int _testImageId = 123;
// private byte[] _testBytes = { 0x01, 0x02, 0x03 };
// public CatalogControllerGetImage()
// {
// _controller = new CatalogController(null, null, _mockImageService.Object,
// _mockLogger.Object);
// }
// [Fact]
// public void CallsImageServiceWithId()
// {
// SetupImageWithTestBytes();
// _controller.GetImage(_testImageId);
// _mockImageService.Verify();
// }
// [Fact]
// public void ReturnsFileResultWithBytesGivenSuccess()
// {
// SetupImageWithTestBytes();
// var result = _controller.GetImage(_testImageId);
// var fileResult = Assert.IsType<FileContentResult>(result);
// var bytes = Assert.IsType<byte[]>(fileResult.FileContents);
// }
// [Fact]
// public void ReturnsNotFoundResultGivenImageMissingException()
// {
// SetupMissingImage();
// var result = _controller.GetImage(_testImageId);
// var actionResult = Assert.IsType<NotFoundResult>(result);
// }
// [Fact]
// public void LogsWarningGivenImageMissingException()
// {
// SetupMissingImage();
// _mockLogger.Setup(l => l.LogWarning(It.IsAny<string>()))
// .Verifiable();
// _controller.GetImage(_testImageId);
// _mockLogger.Verify();
// }
// private void SetupMissingImage()
// {
// _mockImageService
// .Setup(i => i.GetImageBytesById(_testImageId))
// .Throws(new CatalogImageMissingException("missing image"));
// }
// private void SetupImageWithTestBytes()
// {
// _mockImageService
// .Setup(i => i.GetImageBytesById(_testImageId))
// .Returns(_testBytes)
// .Verifiable();
// }
//}
}