2
0

ImageFormatExtensionsTests.cs 995 B

123456789101112131415161718192021222324252627282930313233
  1. using System;
  2. using System.ComponentModel;
  3. using MediaBrowser.Model.Drawing;
  4. using Xunit;
  5. namespace Jellyfin.Model.Drawing;
  6. public static class ImageFormatExtensionsTests
  7. {
  8. private static TheoryData<ImageFormat> GetAllImageFormats()
  9. {
  10. var theoryTypes = new TheoryData<ImageFormat>();
  11. foreach (var x in Enum.GetValues<ImageFormat>())
  12. {
  13. theoryTypes.Add(x);
  14. }
  15. return theoryTypes;
  16. }
  17. [Theory]
  18. [MemberData(nameof(GetAllImageFormats))]
  19. public static void GetMimeType_Valid_Valid(ImageFormat format)
  20. => Assert.Null(Record.Exception(() => format.GetMimeType()));
  21. [Theory]
  22. [InlineData((ImageFormat)int.MinValue)]
  23. [InlineData((ImageFormat)int.MaxValue)]
  24. [InlineData((ImageFormat)(-1))]
  25. [InlineData((ImageFormat)5)]
  26. public static void GetMimeType_Valid_ThrowsInvalidEnumArgumentException(ImageFormat format)
  27. => Assert.Throws<InvalidEnumArgumentException>(() => format.GetMimeType());
  28. }