summaryrefslogtreecommitdiff
path: root/Lib/test/test_codecencodings_kr.py
diff options
context:
space:
mode:
authorHye-Shik Chang <hyeshik@gmail.com>2004-01-17 14:29:29 +0000
committerHye-Shik Chang <hyeshik@gmail.com>2004-01-17 14:29:29 +0000
commit3e2a30692085d32ac63f72b35da39158a471fc68 (patch)
tree4cbe735f61eae87ac56a13ca6bd32113b98bd03d /Lib/test/test_codecencodings_kr.py
parentcd1f7430cb8f48de970021071d7683054c23b10f (diff)
downloadcpython-git-3e2a30692085d32ac63f72b35da39158a471fc68.tar.gz
Add CJK codecs support as discussed on python-dev. (SF #873597)
Several style fixes are suggested by Martin v. Loewis and Marc-Andre Lemburg. Thanks!
Diffstat (limited to 'Lib/test/test_codecencodings_kr.py')
-rw-r--r--Lib/test/test_codecencodings_kr.py57
1 files changed, 57 insertions, 0 deletions
diff --git a/Lib/test/test_codecencodings_kr.py b/Lib/test/test_codecencodings_kr.py
new file mode 100644
index 0000000000..17615ba8f3
--- /dev/null
+++ b/Lib/test/test_codecencodings_kr.py
@@ -0,0 +1,57 @@
+#!/usr/bin/env python
+#
+# test_codecencodings_kr.py
+# Codec encoding tests for ROK encodings.
+#
+# $CJKCodecs: test_codecencodings_kr.py,v 1.1 2003/12/19 03:00:06 perky Exp $
+
+from test import test_support
+from test import test_multibytecodec_support
+import unittest
+
+class Test_CP949(test_multibytecodec_support.TestBase, unittest.TestCase):
+ encoding = 'cp949'
+ tstring = test_multibytecodec_support.load_teststring('cp949')
+ codectests = (
+ # invalid bytes
+ ("abc\x80\x80\xc1\xc4", "strict", None),
+ ("abc\xc8", "strict", None),
+ ("abc\x80\x80\xc1\xc4", "replace", u"abc\ufffd\uc894"),
+ ("abc\x80\x80\xc1\xc4\xc8", "replace", u"abc\ufffd\uc894\ufffd"),
+ ("abc\x80\x80\xc1\xc4", "ignore", u"abc\uc894"),
+ )
+
+class Test_EUCKR(test_multibytecodec_support.TestBase, unittest.TestCase):
+ encoding = 'euc_kr'
+ tstring = test_multibytecodec_support.load_teststring('euc_kr')
+ codectests = (
+ # invalid bytes
+ ("abc\x80\x80\xc1\xc4", "strict", None),
+ ("abc\xc8", "strict", None),
+ ("abc\x80\x80\xc1\xc4", "replace", u"abc\ufffd\uc894"),
+ ("abc\x80\x80\xc1\xc4\xc8", "replace", u"abc\ufffd\uc894\ufffd"),
+ ("abc\x80\x80\xc1\xc4", "ignore", u"abc\uc894"),
+ )
+
+class Test_JOHAB(test_multibytecodec_support.TestBase, unittest.TestCase):
+ encoding = 'johab'
+ tstring = test_multibytecodec_support.load_teststring('johab')
+ codectests = (
+ # invalid bytes
+ ("abc\x80\x80\xc1\xc4", "strict", None),
+ ("abc\xc8", "strict", None),
+ ("abc\x80\x80\xc1\xc4", "replace", u"abc\ufffd\ucd27"),
+ ("abc\x80\x80\xc1\xc4\xc8", "replace", u"abc\ufffd\ucd27\ufffd"),
+ ("abc\x80\x80\xc1\xc4", "ignore", u"abc\ucd27"),
+ )
+
+def test_main():
+ suite = unittest.TestSuite()
+ suite.addTest(unittest.makeSuite(Test_CP949))
+ suite.addTest(unittest.makeSuite(Test_EUCKR))
+ suite.addTest(unittest.makeSuite(Test_JOHAB))
+ test_support.run_suite(suite)
+
+if __name__ == "__main__":
+ test_main()
+