blob: 03564025ed25f5c7f4fa9072ba346686423c7e56 [file] [log] [blame]
Benjamin Peterson90f5ba52010-03-11 22:53:45 +00001#!/usr/bin/env python3
Hye-Shik Chang3e2a3062004-01-17 14:29:29 +00002#
3# test_codecmaps_kr.py
4# Codec mapping tests for ROK encodings
5#
Hye-Shik Chang3e2a3062004-01-17 14:29:29 +00006
Benjamin Petersonee8712c2008-05-20 21:35:26 +00007from test import support
R David Murray75d9aca2012-04-09 09:37:52 -04008from test import multibytecodec_support
Hye-Shik Chang3e2a3062004-01-17 14:29:29 +00009import unittest
10
R David Murray75d9aca2012-04-09 09:37:52 -040011class TestCP949Map(multibytecodec_support.TestBase_Mapping,
Hye-Shik Chang3e2a3062004-01-17 14:29:29 +000012 unittest.TestCase):
13 encoding = 'cp949'
Hye-Shik Chang3e2a3062004-01-17 14:29:29 +000014 mapfileurl = 'http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT' \
15 '/WINDOWS/CP949.TXT'
16
17
R David Murray75d9aca2012-04-09 09:37:52 -040018class TestEUCKRMap(multibytecodec_support.TestBase_Mapping,
Hye-Shik Chang3e2a3062004-01-17 14:29:29 +000019 unittest.TestCase):
20 encoding = 'euc_kr'
Hye-Shik Chang3e2a3062004-01-17 14:29:29 +000021 mapfileurl = 'http://people.freebsd.org/~perky/i18n/EUC-KR.TXT'
22
Guido van Rossum61e21b52007-08-20 19:06:03 +000023 # A4D4 HANGUL FILLER indicates the begin of 8-bytes make-up sequence.
24 pass_enctest = [(b'\xa4\xd4', '\u3164')]
25 pass_dectest = [(b'\xa4\xd4', '\u3164')]
26
Hye-Shik Chang3e2a3062004-01-17 14:29:29 +000027
R David Murray75d9aca2012-04-09 09:37:52 -040028class TestJOHABMap(multibytecodec_support.TestBase_Mapping,
Hye-Shik Chang3e2a3062004-01-17 14:29:29 +000029 unittest.TestCase):
30 encoding = 'johab'
Hye-Shik Chang3e2a3062004-01-17 14:29:29 +000031 mapfileurl = 'http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/' \
32 'KSC/JOHAB.TXT'
33 # KS X 1001 standard assigned 0x5c as WON SIGN.
34 # but, in early 90s that is the only era used johab widely,
35 # the most softwares implements it as REVERSE SOLIDUS.
36 # So, we ignore the standard here.
Guido van Rossum005ebb12007-07-23 18:06:59 +000037 pass_enctest = [(b'\\', '\u20a9')]
38 pass_dectest = [(b'\\', '\u20a9')]
Hye-Shik Chang3e2a3062004-01-17 14:29:29 +000039
40def test_main():
Benjamin Petersonee8712c2008-05-20 21:35:26 +000041 support.run_unittest(__name__)
Hye-Shik Chang3e2a3062004-01-17 14:29:29 +000042
Hye-Shik Chang3e2a3062004-01-17 14:29:29 +000043if __name__ == "__main__":
44 test_main()