diff options
author | Dominik Picheta <dominikpicheta@gmail.com> | 2017-04-17 18:43:31 +0200 |
---|---|---|
committer | Dominik Picheta <dominikpicheta@gmail.com> | 2017-04-17 18:43:31 +0200 |
commit | 793d6efffbee54f2ba00836545f0800b3ab77fd2 (patch) | |
tree | 3522cf30655a66cbbc7a8a20fee0ac10a699db81 /tests/stdlib | |
parent | b829092c9ea2a64360c61754ac57af6f05a3af6c (diff) | |
download | Nim-793d6efffbee54f2ba00836545f0800b3ab77fd2.tar.gz |
Fixes `null` handling for object refs in JSON unmarshal macro.
Diffstat (limited to 'tests/stdlib')
-rw-r--r-- | tests/stdlib/tjsonmacro.nim | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/tests/stdlib/tjsonmacro.nim b/tests/stdlib/tjsonmacro.nim index f8ecd4637..65dc62e2f 100644 --- a/tests/stdlib/tjsonmacro.nim +++ b/tests/stdlib/tjsonmacro.nim @@ -186,7 +186,7 @@ when isMainModule: # Test ref type in field. block: - let jsonNode = parseJson(""" + var jsonNode = parseJson(""" { "person": { "name": "Nimmer", @@ -208,4 +208,13 @@ when isMainModule: var data = to(jsonNode, Data) doAssert data.person.name == "Nimmer" doAssert data.person.age == 21 - doAssert data.list == @[1, 2, 3, 4] \ No newline at end of file + doAssert data.list == @[1, 2, 3, 4] + + jsonNode = parseJson(""" + { + "person": null, + "list": [1, 2, 3, 4] + } + """) + data = to(jsonNode, Data) + doAssert data.person.isNil \ No newline at end of file |