Skip to content

Commit d251064

Browse files
committed
Also test latin1
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
1 parent 3ab27eb commit d251064

File tree

4 files changed

+54
-4
lines changed

4 files changed

+54
-4
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# -*- coding: ascii -*-
2+
3+
def foo():
4+
"""Test"""
5+
pass
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# -*- coding: latin1 -*-
2+
3+
def foo():
4+
"""Test äöü"""
5+
pass
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# -*- coding: utf-8 -*-
2+
3+
def foo():
4+
"""Test äöü"""
5+
pass

bpython/test/test_inspection.py

Lines changed: 39 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,25 @@
1+
# -*- coding: utf-8 -*-
2+
13
try:
24
import unittest2 as unittest
35
except ImportError:
46
import unittest
57

68
from bpython import inspection
9+
from bpython.test.fodder import encoding_ascii
10+
from bpython.test.fodder import encoding_latin1
11+
from bpython.test.fodder import encoding_utf8
12+
13+
foo_ascii_only = u'''def foo():
14+
"""Test"""
15+
pass
16+
'''
17+
18+
foo_non_ascii = u'''def foo():
19+
"""Test äöü"""
20+
pass
21+
'''
22+
723

824
class TestInspection(unittest.TestCase):
925
def test_is_callable(self):
@@ -61,11 +77,30 @@ def spam(eggs=23, foobar="yay"):
6177
self.assertEqual(repr(defaults[0]), "23")
6278
self.assertEqual(repr(defaults[1]), "'yay'")
6379

64-
def test_get_encoding(self):
65-
self.assertEqual(inspection.get_encoding(inspection), 'ascii')
66-
from bpython.test import test_curtsies_painting
67-
self.assertEqual(inspection.get_encoding(test_curtsies_painting), 'utf8')
80+
def test_get_encoding_ascii(self):
81+
self.assertEqual(inspection.get_encoding(encoding_ascii), 'ascii')
82+
self.assertEqual(inspection.get_encoding(encoding_ascii.foo), 'ascii')
83+
84+
def test_get_encoding_latin1(self):
85+
self.assertEqual(inspection.get_encoding(encoding_latin1), 'latin1')
86+
self.assertEqual(inspection.get_encoding(encoding_latin1.foo),
87+
'latin1')
88+
89+
def test_get_encoding_utf8(self):
90+
self.assertEqual(inspection.get_encoding(encoding_utf8), 'utf-8')
91+
self.assertEqual(inspection.get_encoding(encoding_utf8.foo), 'utf-8')
92+
93+
def test_get_source_ascii(self):
94+
self.assertEqual(inspection.get_source_unicode(encoding_ascii.foo),
95+
foo_ascii_only)
96+
97+
def test_get_source_utf8(self):
98+
self.assertEqual(inspection.get_source_unicode(encoding_utf8.foo),
99+
foo_non_ascii)
68100

101+
def test_get_source_latin1(self):
102+
self.assertEqual(inspection.get_source_unicode(encoding_latin1.foo),
103+
foo_non_ascii)
69104

70105
if __name__ == '__main__':
71106
unittest.main()

0 commit comments

Comments
 (0)