summary refs log tree commit diff stats
path: root/tests
diff options
context:
space:
mode:
authorDominik Picheta <dominikpicheta@gmail.com>2017-04-09 17:22:40 +0200
committerDominik Picheta <dominikpicheta@gmail.com>2017-04-09 17:22:40 +0200
commit88cb40cd31d3cf2ebaa2a1c284c335601208db0d (patch)
tree64cbe061208b343361bd86acb7870c4bd05be1f7 /tests
parentbd58a0d67ca9fdf45dca1e1a0922267d205fdedb (diff)
downloadNim-88cb40cd31d3cf2ebaa2a1c284c335601208db0d.tar.gz
Implement support for enum fields in JSON macro.
Diffstat (limited to 'tests')
-rw-r--r--tests/stdlib/tjsonmacro.nim18
1 files changed, 17 insertions, 1 deletions
diff --git a/tests/stdlib/tjsonmacro.nim b/tests/stdlib/tjsonmacro.nim
index 345c5a2fc..74b0d4dc3 100644
--- a/tests/stdlib/tjsonmacro.nim
+++ b/tests/stdlib/tjsonmacro.nim
@@ -166,4 +166,20 @@ 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]
+
+  # Test non-variant enum fields.
+  block:
+    type
+      EnumType = enum
+        Foo, Bar
+
+      TestEnum = object
+        field: EnumType
+
+    var node = %{
+      "field": %"Bar"
+    }
+
+    var result = to(node, TestEnum)
+    doAssert result.field == Bar
\ No newline at end of file