diff --git a/src/WireMock.Net/Util/JsonUtils.cs b/src/WireMock.Net/Util/JsonUtils.cs index 59b19724..59700d2c 100644 --- a/src/WireMock.Net/Util/JsonUtils.cs +++ b/src/WireMock.Net/Util/JsonUtils.cs @@ -11,38 +11,6 @@ namespace WireMock.Util; internal static class JsonUtils { - public static Type CreateTypeFromJObject(JObject instance, string? fullName = null) - { - static Type ConvertType(JToken value, string? propertyName = null) - { - var type = value.Type; - return type switch - { - JTokenType.Array => value.HasValues ? ConvertType(value.First!, propertyName).MakeArrayType() : typeof(object).MakeArrayType(), - JTokenType.Boolean => typeof(bool), - JTokenType.Bytes => typeof(byte[]), - JTokenType.Date => typeof(DateTime), - JTokenType.Guid => typeof(Guid), - JTokenType.Float => typeof(float), - JTokenType.Integer => typeof(long), - JTokenType.Null => typeof(object), - JTokenType.Object => CreateTypeFromJObject((JObject)value, propertyName), - JTokenType.String => typeof(string), - JTokenType.TimeSpan => typeof(TimeSpan), - JTokenType.Uri => typeof(string), - _ => typeof(object) - }; - } - - var properties = new Dictionary(); - foreach (var item in instance.Properties()) - { - properties.Add(item.Name, ConvertType(item.Value, item.Name)); - } - - return TypeBuilderUtils.BuildType(properties, fullName) ?? throw new InvalidOperationException(); - } - public static bool TryParseAsJObject(string? strInput, [NotNullWhen(true)] out JObject? value) { value = null; @@ -141,6 +109,9 @@ internal static class JsonUtils }; } + /// + /// Based on / copied from Handlebars.Net Handlebars.Net.Helpers.Utils.JsonUtils + /// public static string GenerateDynamicLinqStatement(JToken jsonObject) { var lines = new List(); diff --git a/test/WireMock.Net.Tests/WireMock.Net.Tests.csproj b/test/WireMock.Net.Tests/WireMock.Net.Tests.csproj index f1ac2262..b8fc6813 100644 --- a/test/WireMock.Net.Tests/WireMock.Net.Tests.csproj +++ b/test/WireMock.Net.Tests/WireMock.Net.Tests.csproj @@ -24,6 +24,10 @@ NETFRAMEWORK + + + +