[3.13] gh-126332: Add tests for _pyrepl.utils (GH-129325) (#130414)

gh-126332: Add tests for _pyrepl.utils (GH-129325)
(cherry picked from commit 0c4248f88e)

Co-authored-by: Pieter Eendebak <pieter.eendebak@gmail.com>
This commit is contained in:
Miss Islington (bot) 2025-02-21 18:22:42 +01:00 committed by GitHub
parent 8db3eee4cd
commit 3d88c18303
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 28 additions and 0 deletions

View file

@ -0,0 +1,27 @@
from unittest import TestCase
from _pyrepl.utils import str_width, wlen
class TestUtils(TestCase):
def test_str_width(self):
characters = ['a', '1', '_', '!', '\x1a', '\u263A', '\uffb9']
for c in characters:
self.assertEqual(str_width(c), 1)
characters = [chr(99989), chr(99999)]
for c in characters:
self.assertEqual(str_width(c), 2)
def test_wlen(self):
for c in ['a', 'b', '1', '!', '_']:
self.assertEqual(wlen(c), 1)
self.assertEqual(wlen('\x1a'), 2)
char_east_asian_width_N = chr(3800)
self.assertEqual(wlen(char_east_asian_width_N), 1)
char_east_asian_width_W = chr(4352)
self.assertEqual(wlen(char_east_asian_width_W), 2)
self.assertEqual(wlen('hello'), 5)
self.assertEqual(wlen('hello' + '\x1a'), 7)

View file

@ -0,0 +1 @@
Add unit tests for pyrepl.