diff --git a/src/SwaggerProvider.Runtime/RuntimeHelpers.fs b/src/SwaggerProvider.Runtime/RuntimeHelpers.fs index 922fa6f4..8193acd0 100644 --- a/src/SwaggerProvider.Runtime/RuntimeHelpers.fs +++ b/src/SwaggerProvider.Runtime/RuntimeHelpers.fs @@ -433,7 +433,7 @@ module RuntimeHelpers = else sb.Append("null") |> ignore else - sb.Append(x.ToString()) |> ignore + appendFormattedValue sb x (x.GetType()) sb.Append(']') |> ignore diff --git a/tests/SwaggerProvider.Tests/RuntimeHelpersTests.fs b/tests/SwaggerProvider.Tests/RuntimeHelpersTests.fs index 326da46d..7f0d003d 100644 --- a/tests/SwaggerProvider.Tests/RuntimeHelpersTests.fs +++ b/tests/SwaggerProvider.Tests/RuntimeHelpersTests.fs @@ -1212,9 +1212,9 @@ module FormatObjectTests = formatObject obj |> shouldEqual "{Label=null}" [] - let ``formatObject formats array property as bracketed list``() = + let ``formatObject formats array property as bracketed list with quoted strings``() = let obj = FmtArray([| "alpha"; "beta" |]) - formatObject obj |> shouldEqual "{Tags=[alpha; beta]}" + formatObject obj |> shouldEqual "{Tags=[\"alpha\"; \"beta\"]}" [] let ``formatObject formats empty array property as empty brackets``() = @@ -1229,7 +1229,7 @@ module FormatObjectTests = [] let ``formatObject formats array with mixed null and non-null elements``() = let obj = FmtArray([| "a"; null; "b" |]) - formatObject obj |> shouldEqual "{Tags=[a; null; b]}" + formatObject obj |> shouldEqual "{Tags=[\"a\"; null; \"b\"]}" [] let ``formatObject formats object with no properties as empty braces``() = @@ -1310,7 +1310,7 @@ module FormatObjectTests = [] let ``formatObject formats Option string array Some as bracketed list``() = let obj = FmtOptionStringArray(Some([| "first"; "second" |])) - formatObject obj |> shouldEqual "{Tags=[first; second]}" + formatObject obj |> shouldEqual "{Tags=[\"first\"; \"second\"]}" [] let ``formatObject formats Option DateOnly array Some as ISO 8601 list``() =