using System.IO; using System.Threading.Tasks; using Microsoft.VisualStudio.TestTools.UnitTesting; using SixLabors.ImageSharp.PixelFormats; using MaddoShared.ImageSharpTests.Helpers; using Shouldly; namespace MaddoShared.ImageSharpTests.Tests { [TestClass] public class ImageResizingTests { [TestMethod] public async Task BigImageResizesRespectSettings() { using var ws = new TempWorkspace(); // create a large input image var inputPath = TestImageFactory.CreateSolidJpeg(ws.SourceDir.FullName, "input.jpg", 1600, 1200, new Rgba32(200, 200, 200, 255)); var pic = CreatorFactory.CreateDefaultPicSettings(); pic.LarghezzaBig = 800; pic.AltezzaBig = 600; pic.CreaMiniature = false; var svc = CreatorFactory.CreateImageCreator(pic); var state = new MaddoShared.ImageState { WorkFile = new FileInfo(inputPath), DestDir = ws.DestDir, SourceDir = ws.SourceDir }; await svc.CreateImageAsync(state, null); var outPath = Path.Combine(ws.DestDir.FullName, state.NomeFileBig); using var outImg = SixLabors.ImageSharp.Image.Load(outPath); outImg.Width.ShouldBe(800); outImg.Height.ShouldBe(600); } } }