summary refs log tree commit diff stats
path: root/tests/stdlib
diff options
context:
space:
mode:
authorDominik Picheta <dominikpicheta@gmail.com>2017-11-28 21:49:34 +0000
committerDominik Picheta <dominikpicheta@googlemail.com>2017-11-30 21:34:30 +0000
commit11fcae57052b3c886b4d2b593acb3ac0d717edd1 (patch)
tree6a50936e8f01d4df0ccddde08a698d882eb71594 /tests/stdlib
parent216119212c256548a3e7557d5190fe61a7b9524a (diff)
downloadNim-11fcae57052b3c886b4d2b593acb3ac0d717edd1.tar.gz
Fixes #5856. Code based on @loloiccl's PR (#5879).
Diffstat (limited to 'tests/stdlib')
-rw-r--r--tests/stdlib/tjsonmacro.nim15
1 files changed, 14 insertions, 1 deletions
diff --git a/tests/stdlib/tjsonmacro.nim b/tests/stdlib/tjsonmacro.nim
index 153cf8556..2d20063ab 100644
--- a/tests/stdlib/tjsonmacro.nim
+++ b/tests/stdlib/tjsonmacro.nim
@@ -246,4 +246,17 @@ when isMainModule:
     var b = Bird(age: 3, height: 1.734, name: "bardo", colors: [red, blue])
     let jnode = %b
     let data = jnode.to(Bird)
-    doAssert data == b
\ No newline at end of file
+    doAssert data == b
+
+  block:
+    type
+      MsgBase = ref object of RootObj
+        name*: string
+
+      MsgChallenge = ref object of MsgBase
+        challenge*: string
+
+    let data = %*{"name": "foo", "challenge": "bar"}
+    let msg = data.to(MsgChallenge)
+    doAssert msg.name == "foo"
+    doAssert msg.challenge == "bar"
\ No newline at end of file