##// END OF EJS Templates
largefiles: modernize how capabilities are added to the wire protocol...
largefiles: modernize how capabilities are added to the wire protocol See 982f13bef503, which came well after this code was originally written.

File last commit:

r33929:6c119dbf default
r35523:95a9be56 @17 default
Show More
test-encoding-func.py
45 lines | 1.1 KiB | text/x-python | PythonLexer
/ tests / test-encoding-func.py
from __future__ import absolute_import
import unittest
from mercurial import (
encoding,
)
class IsasciistrTest(unittest.TestCase):
asciistrs = [
b'a',
b'ab',
b'abc',
b'abcd',
b'abcde',
b'abcdefghi',
b'abcd\0fghi',
]
def testascii(self):
for s in self.asciistrs:
self.assertTrue(encoding.isasciistr(s))
def testnonasciichar(self):
for s in self.asciistrs:
for i in range(len(s)):
t = bytearray(s)
t[i] |= 0x80
self.assertFalse(encoding.isasciistr(bytes(t)))
class LocalEncodingTest(unittest.TestCase):
def testasciifastpath(self):
s = b'\0' * 100
self.assertTrue(s is encoding.tolocal(s))
self.assertTrue(s is encoding.fromlocal(s))
class Utf8bEncodingTest(unittest.TestCase):
def testasciifastpath(self):
s = b'\0' * 100
self.assertTrue(s is encoding.toutf8b(s))
self.assertTrue(s is encoding.fromutf8b(s))
if __name__ == '__main__':
import silenttestrunner
silenttestrunner.main(__name__)