summary refs log tree commit diff stats
path: root/tests/misc/trfc_341.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/misc/trfc_341.nim')
-rw-r--r--tests/misc/trfc_341.nim27
1 files changed, 0 insertions, 27 deletions
diff --git a/tests/misc/trfc_341.nim b/tests/misc/trfc_341.nim
deleted file mode 100644
index 37cf675c6..000000000
--- a/tests/misc/trfc_341.nim
+++ /dev/null
@@ -1,27 +0,0 @@
-# test for https://github.com/nim-lang/RFCs/issues/341
-import std/json
-import std/jsonutils
-import std/macros
-
-macro fn1(a: untyped): string = newLit a.lispRepr
-
-doAssert fn1(a.?b.c) == """(DotExpr (Infix (Ident ".?") (Ident "a") (Ident "b")) (Ident "c"))"""
-
-template `.?`(a: JsonNode, b: untyped{ident}): JsonNode =
-  a[astToStr(b)]
-
-proc identity[T](a: T): T = a
-proc timesTwo[T](a: T): T = a * 2
-
-template main =
-  let a = (a1: 1, a2: "abc", a3: (a4: 2.5))
-  let j = a.toJson
-  doAssert j.?a1.getInt == 1
-  doAssert j.?a3.?a4.getFloat == 2.5
-  doAssert j.?a3.?a4.getFloat.timesTwo == 5.0
-  doAssert j.?a3.identity.?a4.getFloat.timesTwo == 5.0
-  doAssert j.identity.?a3.identity.?a4.identity.getFloat.timesTwo == 5.0
-  doAssert j.identity.?a3.?a4.identity.getFloat.timesTwo == 5.0
-
-static: main()
-main()