From 6015e4551b3b73f6620c6431350bbde2d2ff4323 Mon Sep 17 00:00:00 2001 From: Joe Guo Date: Fri, 23 Mar 2018 14:10:28 +1300 Subject: [PATCH] selftest/check_output: convert bytes to str for Python 3 `BlackboxTestCase.check_output` will return bytes since it uses `subprocess.communicate` underneath. Convert expected string result to bytes for comparing. This will be compatible for both Python 2 & 3. Signed-off-by: Joe Guo --- python/samba/tests/blackbox/check_output.py | 4 +++- selftest/tests.py | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/python/samba/tests/blackbox/check_output.py b/python/samba/tests/blackbox/check_output.py index d7e41a838b4..8b3643d492d 100644 --- a/python/samba/tests/blackbox/check_output.py +++ b/python/samba/tests/blackbox/check_output.py @@ -100,6 +100,8 @@ def test_check_output_with_large_output(self): try: with TimeoutHelper(10): actual = self.check_output(cmdline) - self.assertEqual(actual, expected) + # check_output will return bytes + # convert expected to bytes for python 3 + self.assertEqual(actual, expected.encode('utf-8')) except TimeoutHelper.Timeout: self.fail(msg='Timeout!') diff --git a/selftest/tests.py b/selftest/tests.py index ccd184f60e1..a9594256530 100644 --- a/selftest/tests.py +++ b/selftest/tests.py @@ -52,7 +52,7 @@ else: planpythontestsuite("none", "subunit.tests.test_suite") planpythontestsuite("none", "samba.tests.blackbox.ndrdump") -planpythontestsuite("none", "samba.tests.blackbox.check_output") +planpythontestsuite("none", "samba.tests.blackbox.check_output", py3_compatible=True) planpythontestsuite("none", "api", name="ldb.python", extra_path=['lib/ldb/tests/python']) planpythontestsuite("none", "samba.tests.credentials", py3_compatible=True) planpythontestsuite("none", "samba.tests.registry", py3_compatible=True)