import unittest from unittest.mock import MagicMock from pythonforandroid import logger class TestShprint(unittest.TestCase): def test_unicode_encode(self): """ Makes sure `shprint()` can handle unicode command output. Running the test with PYTHONIOENCODING=ASCII env would fail, refs: https://github.com/kivy/python-for-android/issues/1654 """ expected_command_output = ["foo\xa0bar"] command = MagicMock() command.return_value = expected_command_output output = logger.shprint(command, 'a1', k1='k1') self.assertEqual(output, expected_command_output)