Browse Source

Polaroid

af/merge-core
James Jackson-South 9 years ago
parent
commit
792bd7deca
  1. 46
      tests/ImageSharp.Tests/Processing/ColorMatrix/PolaroidTest.cs
  2. 47
      tests/ImageSharp.Tests/Processors/Filters/PolaroidTest.cs

46
tests/ImageSharp.Tests/Processing/ColorMatrix/PolaroidTest.cs

@ -0,0 +1,46 @@
// <copyright file="PolaroidTest.cs" company="James Jackson-South">
// Copyright (c) James Jackson-South and contributors.
// Licensed under the Apache License, Version 2.0.
// </copyright>
namespace ImageSharp.Tests.Processing.ColorMatrix
{
using ImageSharp.PixelFormats;
using Xunit;
public class PolaroidTest : FileTestBase
{
[Theory]
[WithFileCollection(nameof(AllBmpFiles), StandardPixelTypes)]
public void ImageShouldApplyPolaroidFilter<TPixel>(TestImageProvider<TPixel> provider)
where TPixel : struct, IPixel<TPixel>
{
using (Image<TPixel> image = provider.GetImage())
{
image.Polaroid()
.DebugSave(provider, null, Extensions.Bmp);
}
}
[Theory]
[WithFileCollection(nameof(AllBmpFiles), StandardPixelTypes)]
public void ImageShouldApplyPolaroidFilterInBox<TPixel>(TestImageProvider<TPixel> provider)
where TPixel : struct, IPixel<TPixel>
{
using (Image<TPixel> source = provider.GetImage())
using (var image = new Image<TPixel>(source))
{
var bounds = new Rectangle(10, 10, image.Width / 2, image.Height / 2);
image.Polaroid(bounds)
.DebugSave(provider, null, Extensions.Bmp);
// Draw identical shapes over the bounded and compare to ensure changes are constrained.
image.Fill(NamedColors<TPixel>.HotPink, bounds);
source.Fill(NamedColors<TPixel>.HotPink, bounds);
ImageComparer.CheckSimilarity(image, source);
}
}
}
}

47
tests/ImageSharp.Tests/Processors/Filters/PolaroidTest.cs

@ -1,47 +0,0 @@
// <copyright file="PolaroidTest.cs" company="James Jackson-South">
// Copyright (c) James Jackson-South and contributors.
// Licensed under the Apache License, Version 2.0.
// </copyright>
namespace ImageSharp.Tests
{
using System.IO;
using ImageSharp.PixelFormats;
using Xunit;
public class PolaroidTest : FileTestBase
{
[Fact]
public void ImageShouldApplyPolaroidFilter()
{
string path = this.CreateOutputDirectory("Polaroid");
foreach (TestFile file in Files)
{
using (Image<Rgba32> image = file.CreateImage())
using (FileStream output = File.OpenWrite($"{path}/{file.FileName}"))
{
image.Polaroid().Save(output);
}
}
}
[Fact]
public void ImageShouldApplyPolaroidFilterInBox()
{
string path = this.CreateOutputDirectory("Polaroid");
foreach (TestFile file in Files)
{
string filename = file.GetFileName("InBox");
using (Image<Rgba32> image = file.CreateImage())
using (FileStream output = File.OpenWrite($"{path}/{filename}"))
{
image.Polaroid(new Rectangle(10, 10, image.Width / 2, image.Height / 2)).Save(output);
}
}
}
}
}
Loading…
Cancel
Save