UTF16 / 32测试用例(需要负面测试用例)

时间:2013-03-24 06:47:22

标签: testing unicode utf-8 utf-16 utf-32

我想/需要一个测试用例来测试/打破UTF-32和UTF-16之间的转换。

对于UTF-8和UTF-16,我通常使用' Chinese Bone' test:0xE9 0xAA 0xA8(UTF8)和0x9AA8(UTF16)。

有没有人有一个负面的测试用例,应该打破UTF-16和UTF-32写得不好的实现?理想情况下,测试需要使用至少两个UTF-32值。

杰夫

1 个答案:

答案 0 :(得分:1)

不确定你的意思,这里有一些:

UTF-16

  • \xD8\x00\x00\x00\xD8\x00\xDB\xFF
  • 之后使用常规单位或其他潜在客户代理主导代理人
  • 在没有主要代理人的\x00\x61\xDC\00
  • 之前追踪代理人
  • 追踪代理人\xDF\xFF\xDB\xFF
  • 将代理人作为最后一个单位\xD8\x01<EOF>
  • 领导代理人作为最后一个单位,然后是半道代理人。 python 2.7.3中存在此错误:'\xD8\x00\xDC'.decode('utf-16be')

UTF-32

  • 单位值对value < 0value > 0x10FFFF0xD800 <= value && value <= 0xDFFF
  • 返回true