UrlDecodeQueryFeatureTests.cs 867 B

123456789101112131415161718192021222324252627
  1. using System.Collections.Generic;
  2. using System.Linq;
  3. using Microsoft.AspNetCore.Http;
  4. using Microsoft.AspNetCore.Http.Features;
  5. using Microsoft.Extensions.Primitives;
  6. using Xunit;
  7. namespace Jellyfin.Api.Middleware.Tests
  8. {
  9. public static class UrlDecodeQueryFeatureTests
  10. {
  11. [Theory]
  12. [InlineData("e0a72cb2a2c7", "e0a72cb2a2c7")] // isn't encoded
  13. public static void EmptyValueTest(string query, string key)
  14. {
  15. var dict = new Dictionary<string, StringValues>
  16. {
  17. { query, StringValues.Empty }
  18. };
  19. var test = new UrlDecodeQueryFeature(new QueryFeature(new QueryCollection(dict)));
  20. Assert.Single(test.Query);
  21. var (k, v) = test.Query.First();
  22. Assert.Equal(key, k);
  23. Assert.True(StringValues.IsNullOrEmpty(v));
  24. }
  25. }
  26. }