perky 03/07/12 06:52:01
Modified: tests test_multibytecodec_support.py
Added: tests test_mapping_euc_jisx0213.py
Log:
Add unittest for EUC-JISX0213
Revision Changes Path
1.7 +17 -1 cjkcodecs/tests/test_multibytecodec_support.py
Index: test_multibytecodec_support.py
===================================================================
RCS file: /cvsroot/koco/cjkcodecs/tests/test_multibytecodec_support.py,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- test_multibytecodec_support.py 20 Jun 2003 09:04:53 -0000 1.6
+++ test_multibytecodec_support.py 12 Jul 2003 13:52:01 -0000 1.7
@@ -27,7 +27,7 @@
# IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
-# $Id: test_multibytecodec_support.py,v 1.6 2003/06/20 09:04:53 perky Exp $
+# $Id: test_multibytecodec_support.py,v 1.7 2003/07/12 13:52:01 perky Exp $
#
import sys, codecs, os.path
@@ -151,6 +151,22 @@
ostream.write(data)
self.assertEqual(ostream.getvalue(), self.tstring[0])
+
+if len(u'\U00012345') == 2: # ucs2 build
+ _unichr = unichr
+ def unichr(v):
+ if v >= 0x10000:
+ return _unichr(0xd800 + ((v - 0x10000) >> 10)) + \
+ _unichr(0xdc00 + ((v - 0x10000) & 0x3ff))
+ else:
+ return _unichr(v)
+ _ord = ord
+ def ord(c):
+ if len(c) == 2:
+ return 0x10000 + ((_ord(c[0]) - 0xd800) << 10) + \
+ (ord(c[1]) - 0xdc00)
+ else:
+ return _ord(c)
class TestBase_Mapping(unittest.TestCase):
pass_enctest = []
1.1 cjkcodecs/tests/test_mapping_euc_jisx0213.py
Index: test_mapping_euc_jisx0213.py
===================================================================
#!/usr/bin/env python
#
# test_mapping_euc_jisx0213.py: Mapping test for EUC-JISX0213 codec
#
# Copyright (C) 2003 Hye-Shik Chang <pe...@Fr...>.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
# DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
# IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
# $Id: test_mapping_euc_jisx0213.py,v 1.1 2003/07/12 13:52:01 perky Exp $
#
from test import test_support
import test_multibytecodec_support
import sys, codecs, os
import unittest
if not os.path.exists('EUC-JISX0213.TXT'):
raise test_support.TestSkipped(
'EUC-JP.TXT not found, download from http://people.freebsd'
'.org/~perky/i18n/EUC-JISX0213.TXT')
class TestEUCJISX0213Map(test_multibytecodec_support.TestBase_Mapping,
unittest.TestCase):
encoding = 'cjkcodecs.euc_jisx0213'
mapfilename = 'EUC-JISX0213.TXT'
def test_main():
suite = unittest.TestSuite()
suite.addTest(unittest.makeSuite(TestEUCJISX0213Map))
test_support.run_suite(suite)
if __name__ == "__main__":
test_main()
# ex: ts=8 sts=4 et
|