mirror of
https://github.com/jellyfin/jellyfin.git
synced 2024-09-07 06:17:14 -04:00
47 lines
1.5 KiB
C#
47 lines
1.5 KiB
C#
using System;
|
|
using System.ComponentModel;
|
|
using MediaBrowser.Model.Drawing;
|
|
using Xunit;
|
|
|
|
namespace Jellyfin.Model.Drawing;
|
|
|
|
public static class ImageFormatExtensionsTests
|
|
{
|
|
public static TheoryData<ImageFormat> GetAllImageFormats()
|
|
{
|
|
var theoryTypes = new TheoryData<ImageFormat>();
|
|
foreach (var x in Enum.GetValues<ImageFormat>())
|
|
{
|
|
theoryTypes.Add(x);
|
|
}
|
|
|
|
return theoryTypes;
|
|
}
|
|
|
|
[Theory]
|
|
[MemberData(nameof(GetAllImageFormats))]
|
|
public static void GetMimeType_Valid_Valid(ImageFormat format)
|
|
=> Assert.Null(Record.Exception(() => format.GetMimeType()));
|
|
|
|
[Theory]
|
|
[InlineData((ImageFormat)int.MinValue)]
|
|
[InlineData((ImageFormat)int.MaxValue)]
|
|
[InlineData((ImageFormat)(-1))]
|
|
[InlineData((ImageFormat)5)]
|
|
public static void GetMimeType_Valid_ThrowsInvalidEnumArgumentException(ImageFormat format)
|
|
=> Assert.Throws<InvalidEnumArgumentException>(() => format.GetMimeType());
|
|
|
|
[Theory]
|
|
[MemberData(nameof(GetAllImageFormats))]
|
|
public static void GetExtension_Valid_Valid(ImageFormat format)
|
|
=> Assert.Null(Record.Exception(() => format.GetExtension()));
|
|
|
|
[Theory]
|
|
[InlineData((ImageFormat)int.MinValue)]
|
|
[InlineData((ImageFormat)int.MaxValue)]
|
|
[InlineData((ImageFormat)(-1))]
|
|
[InlineData((ImageFormat)5)]
|
|
public static void GetExtension_Valid_ThrowsInvalidEnumArgumentException(ImageFormat format)
|
|
=> Assert.Throws<InvalidEnumArgumentException>(() => format.GetExtension());
|
|
}
|