summary refs log tree commit diff stats
path: root/tests/stdlib/tencodings.nim
diff options
context:
space:
mode:
authorflywind <xzsflywind@gmail.com>2021-04-26 20:48:25 +0800
committerGitHub <noreply@github.com>2021-04-26 14:48:25 +0200
commit01bca8cd4fad857124794144bff09ae0326895bd (patch)
treeb3213de89ce69465ea2cdb9f096e8e125d76ca63 /tests/stdlib/tencodings.nim
parent68e522ececdb9f79371f4b60d1fbddcf01736050 (diff)
downloadNim-01bca8cd4fad857124794144bff09ae0326895bd.tar.gz
fix gbk encodings on windows (#17843)
Diffstat (limited to 'tests/stdlib/tencodings.nim')
-rw-r--r--tests/stdlib/tencodings.nim25
1 files changed, 25 insertions, 0 deletions
diff --git a/tests/stdlib/tencodings.nim b/tests/stdlib/tencodings.nim
new file mode 100644
index 000000000..1da52ba59
--- /dev/null
+++ b/tests/stdlib/tencodings.nim
@@ -0,0 +1,25 @@
+import std/encodings
+
+var fromGBK = open("utf-8", "gbk")
+var toGBK = open("gbk", "utf-8")
+
+var fromGB2312 = open("utf-8", "gb2312")
+var toGB2312 = open("gb2312", "utf-8")
+
+
+block:
+  let data = "\215\237\186\243\178\187\214\170\204\236\212\218\203\174\163\172\194\250\180\178\208\199\195\206\209\185\208\199\186\211"
+  doAssert fromGBK.convert(data) == "醉后不知天在水,满床星梦压星河"
+
+block:
+  let data = "万两黄金容易得,知心一个也难求"
+  doAssert toGBK.convert(data) == "\205\242\193\189\187\198\189\240\200\221\210\215\181\195\163\172\214\170\208\196\210\187\184\246\210\178\196\209\199\243"
+
+
+block:
+  let data = "\215\212\208\197\200\203\201\250\182\254\176\217\196\234\163\172\187\225\181\177\203\174\187\247\200\253\199\167\192\239"
+  doAssert fromGB2312.convert(data) == "自信人生二百年,会当水击三千里"
+
+block:
+  let data = "谁怕?一蓑烟雨任平生"
+  doAssert toGB2312.convert(data) == "\203\173\197\194\163\191\210\187\203\242\209\204\211\234\200\206\198\189\201\250"