Skip to content

Commit 5cf6aba

Browse files
committed
try to repro #187
1 parent 5cf10d3 commit 5cf6aba

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

tests/FSharp.SystemTextJson.Tests/Test.Regression.fs

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,3 +124,21 @@ let ``regression #172`` () =
124124
options.Converters.Add(JsonFSharpConverter())
125125
Assert.Equal("{\"X\":null}", JsonSerializer.Serialize(x, options))
126126
Assert.Equal("{\"Y\":null}", JsonSerializer.Serialize(y, options))
127+
128+
type Rec = { X: int }
129+
130+
[<JsonFSharpConverter(UnionEncoding = (JsonUnionEncoding.Default
131+
||| JsonUnionEncoding.InternalTag
132+
||| JsonUnionEncoding.NamedFields))>]
133+
type Union =
134+
| A of record: Rec
135+
| B
136+
137+
[<Fact>]
138+
let ``regression #187`` () =
139+
let options =
140+
JsonSerializerOptions(PropertyNamingPolicy = JsonNamingPolicy.CamelCase, PropertyNameCaseInsensitive = true)
141+
let record = { X = 42 }
142+
let union = A record
143+
Assert.Equal("{\"x\":42}", JsonSerializer.Serialize(record, options))
144+
Assert.Equal("{\"Case\":\"A\",\"record\":{\"x\":42}}", JsonSerializer.Serialize(union, options))

0 commit comments

Comments
 (0)