JsonVersionConverterTests.cs 1.0 KB

123456789101112131415161718192021222324252627282930313233343536
  1. using System;
  2. using System.Text.Json;
  3. using Jellyfin.Extensions.Json.Converters;
  4. using Xunit;
  5. namespace Jellyfin.Extensions.Tests.Json.Converters
  6. {
  7. public class JsonVersionConverterTests
  8. {
  9. private readonly JsonSerializerOptions _options;
  10. public JsonVersionConverterTests()
  11. {
  12. _options = new JsonSerializerOptions();
  13. _options.Converters.Add(new JsonVersionConverter());
  14. }
  15. [Fact]
  16. public void Deserialize_Version_Success()
  17. {
  18. var input = "\"1.025.222\"";
  19. var output = new Version(1, 25, 222);
  20. var deserializedInput = JsonSerializer.Deserialize<Version>(input, _options);
  21. Assert.Equal(output, deserializedInput);
  22. }
  23. [Fact]
  24. public void Serialize_Version_Success()
  25. {
  26. var input = new Version(1, 09, 59);
  27. var output = "\"1.9.59\"";
  28. var serializedInput = JsonSerializer.Serialize(input, _options);
  29. Assert.Equal(output, serializedInput);
  30. }
  31. }
  32. }