Skip to content

Commit 99ac0e8

Browse files
committed
Tests for comparisons of objects containing unicode
1 parent 46cadc0 commit 99ac0e8

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed

pandas/tests/util/test_testing.py

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -276,6 +276,19 @@ def test_numpy_array_equal_message(self):
276276
assert_almost_equal(np.array([[1, 2], [3, 4]]),
277277
np.array([[1, 3], [3, 4]]))
278278

279+
expected = """numpy array are different
280+
281+
numpy array values are different \\(33\\.33333 %\\)
282+
\\[left\\]: \\[á, à, ä\\]
283+
\\[right\\]: \\[á, à, å\\]"""
284+
285+
with tm.assert_raises_regex(AssertionError, expected):
286+
assert_numpy_array_equal(np.array([u"á", u"à", u"ä"]),
287+
np.array([u"á", u"à", u"å"]))
288+
with tm.assert_raises_regex(AssertionError, expected):
289+
assert_almost_equal(np.array([u"á", u"à", u"ä"]),
290+
np.array([u"á", u"à", u"å"]))
291+
279292
# allow to overwrite message
280293
expected = """Index are different
281294
@@ -499,10 +512,12 @@ def _assert_not_equal(self, a, b, **kwargs):
499512
def test_equal(self):
500513
self._assert_equal(Series(range(3)), Series(range(3)))
501514
self._assert_equal(Series(list('abc')), Series(list('abc')))
515+
self._assert_equal(Series(list(u'áàä')), Series(list(u'áàä')))
502516

503517
def test_not_equal(self):
504518
self._assert_not_equal(Series(range(3)), Series(range(3)) + 1)
505519
self._assert_not_equal(Series(list('abc')), Series(list('xyz')))
520+
self._assert_not_equal(Series(list(u'áàä')), Series(list(u'éèë')))
506521
self._assert_not_equal(Series(range(3)), Series(range(4)))
507522
self._assert_not_equal(
508523
Series(range(3)), Series(
@@ -678,6 +693,21 @@ def test_frame_equal_message(self):
678693
pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 7]}),
679694
by_blocks=True)
680695

696+
expected = """DataFrame\\.iloc\\[:, 1\\] are different
697+
698+
DataFrame\\.iloc\\[:, 1\\] values are different \\(33\\.33333 %\\)
699+
\\[left\\]: \\[é, è, ë\\]
700+
\\[right\\]: \\[é, è, e̊\\]"""
701+
702+
with tm.assert_raises_regex(AssertionError, expected):
703+
assert_frame_equal(pd.DataFrame({'A': [u"á", u"à", u"ä"], 'E': [u"é", u"è", u"ë"]}),
704+
pd.DataFrame({'A': [u"á", u"à", u"ä"], 'E': [u"é", u"è", u"e̊"]}))
705+
706+
with tm.assert_raises_regex(AssertionError, expected):
707+
assert_frame_equal(pd.DataFrame({'A': [u"á", u"à", u"ä"], 'E': [u"é", u"è", u"ë"]}),
708+
pd.DataFrame({'A': [u"á", u"à", u"ä"], 'E': [u"é", u"è", u"e̊"]}),
709+
by_blocks=True)
710+
681711

682712
class TestAssertCategoricalEqual(object):
683713

0 commit comments

Comments
 (0)