summary refs log tree commit diff stats
path: root/tests/js/tos.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/js/tos.nim')
-rw-r--r--tests/js/tos.nim26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/js/tos.nim b/tests/js/tos.nim
index 30c19c1ae..07eb3aaa3 100644
--- a/tests/js/tos.nim
+++ b/tests/js/tos.nim
@@ -19,3 +19,29 @@ block:
   if not isWindows:
     doAssert cwd.isAbsolute
     doAssert relativePath(getCurrentDir() / "foo", "bar") == "../foo"
+
+import std/sequtils
+
+template main =
+  putEnv("foo", "bar")
+  doAssert getEnv("foo") == "bar"
+  doAssert existsEnv("foo")
+
+  putEnv("foo", "")
+  doAssert existsEnv("foo")
+  putEnv("foo", "bar2")
+  doAssert getEnv("foo") == "bar2"
+
+  when nimvm:
+    discard
+  else:
+    # need support in vmops: envPairs, delEnv
+    let s = toSeq(envPairs())
+    doAssert ("foo", "bar2") in s
+    doAssert ("foo", "bar") notin s
+
+    delEnv("foo")
+    doAssert not existsEnv("foo")
+
+static: main()
+main()