summary refs log tree commit diff stats
path: root/tests/stdlib/tsince.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/stdlib/tsince.nim')
-rw-r--r--tests/stdlib/tsince.nim32
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/stdlib/tsince.nim b/tests/stdlib/tsince.nim
new file mode 100644
index 000000000..a0a4229cb
--- /dev/null
+++ b/tests/stdlib/tsince.nim
@@ -0,0 +1,32 @@
+import std/private/since
+import std/assertions
+
+proc fun1(): int {.since: (1, 3).} = 12
+proc fun1Bad(): int {.since: (99, 3).} = 12
+proc fun2(): int {.since: (1, 3, 1).} = 12
+proc fun2Bad(): int {.since: (99, 3, 1).} = 12
+
+doAssert fun1() == 12
+doAssert declared(fun1)
+doAssert not declared(fun1Bad)
+
+doAssert fun2() == 12
+doAssert declared(fun2)
+doAssert not declared(fun2Bad)
+
+var ok = false
+since (1, 3):
+  ok = true
+doAssert ok
+
+ok = false
+since (1, 3, 1):
+  ok = true
+doAssert ok
+
+since (99, 3):
+  doAssert false
+
+template fun3(): int {.since: (1, 3).} = 12
+
+doAssert declared(fun3)