// // Copyright (c) James Jackson-South and contributors. // Licensed under the Apache License, Version 2.0. // namespace ImageSharp.Tests { using System; using System.IO; using Xunit; public class OilPaintTest : FileTestBase { public static readonly TheoryData> OilPaintValues = new TheoryData> { new Tuple(15,10), new Tuple(6,5) }; [Theory] [MemberData(nameof(OilPaintValues))] public void ImageShouldApplyOilPaintFilter(Tuple value) { string path = CreateOutputDirectory("OilPaint"); foreach (TestFile file in Files) { string filename = file.GetFileName(value); Image image = file.CreateImage(); using (FileStream output = File.OpenWrite($"{path}/{filename}")) { image.OilPaint(value.Item1, value.Item2) .Save(output); } } } [Theory] [MemberData(nameof(OilPaintValues))] public void ImageShouldApplyOilPaintFilterInBox(Tuple value) { string path = CreateOutputDirectory("OilPaint"); foreach (TestFile file in Files) { string filename = file.GetFileName(value + "-InBox"); Image image = file.CreateImage(); using (FileStream output = File.OpenWrite($"{path}/{filename}")) { image.OilPaint(value.Item1, value.Item2, new Rectangle(10, 10, image.Width / 2, image.Height / 2)) .Save(output); } } } } }