Add whitespace handling and tests

pull/4312/head
crobibero 4 years ago
parent 7565ae22cb
commit b2662894cf

@ -35,7 +35,7 @@ namespace MediaBrowser.Common.Json.Converters
var entries = new T[stringEntries.Length];
for (var i = 0; i < stringEntries.Length; i++)
{
entries[i] = (T)_typeConverter.ConvertFrom(stringEntries[i]);
entries[i] = (T)_typeConverter.ConvertFrom(stringEntries[i].Trim());
}
return entries;

@ -21,6 +21,19 @@ namespace Jellyfin.Common.Tests.Json
Assert.Equal(desiredValue.Value, value?.Value);
}
[Fact]
public static void Deserialize_String_Space_Valid_Success()
{
var desiredValue = new GenericBodyModel<string>
{
Value = new[] { "a", "b", "c" }
};
var options = new JsonSerializerOptions();
var value = JsonSerializer.Deserialize<GenericBodyModel<string>>(@"{ ""Value"": ""a, b, c"" }", options);
Assert.Equal(desiredValue.Value, value?.Value);
}
[Fact]
public static void Deserialize_GenericCommandType_Valid_Success()
{
@ -35,6 +48,20 @@ namespace Jellyfin.Common.Tests.Json
Assert.Equal(desiredValue.Value, value?.Value);
}
[Fact]
public static void Deserialize_GenericCommandType_Space_Valid_Success()
{
var desiredValue = new GenericBodyModel<GeneralCommandType>
{
Value = new[] { GeneralCommandType.MoveUp, GeneralCommandType.MoveDown }
};
var options = new JsonSerializerOptions();
options.Converters.Add(new JsonStringEnumConverter());
var value = JsonSerializer.Deserialize<GenericBodyModel<GeneralCommandType>>(@"{ ""Value"": ""MoveUp, MoveDown"" }", options);
Assert.Equal(desiredValue.Value, value?.Value);
}
[Fact]
public static void Deserialize_String_Array_Valid_Success()
{

Loading…
Cancel
Save