From f79b41243dd36214c583ce152132450def3a673e Mon Sep 17 00:00:00 2001 From: Marc Abramowitz Date: Wed, 20 Mar 2013 22:37:05 -0700 Subject: [PATCH] Make MonkeyPatchedBinaryTest not fail on Python 2.5 (which doesn't have the `b` notation for byte string literals) --- lib/sqlalchemy/util/compat.py | 8 ++++++++ test/dialect/test_mssql.py | 3 ++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/lib/sqlalchemy/util/compat.py b/lib/sqlalchemy/util/compat.py index 12d349a5b8..2a0f06f8ec 100644 --- a/lib/sqlalchemy/util/compat.py +++ b/lib/sqlalchemy/util/compat.py @@ -132,3 +132,11 @@ else: return obj return g +# Adapted from six.py +if py3k: + def b(s): + return s.encode("latin-1") +else: + def b(s): + return s + diff --git a/test/dialect/test_mssql.py b/test/dialect/test_mssql.py index 769f47e227..08c72a0ec8 100644 --- a/test/dialect/test_mssql.py +++ b/test/dialect/test_mssql.py @@ -16,6 +16,7 @@ from sqlalchemy import testing from sqlalchemy.testing import emits_warning_on, assert_raises_message import decimal from sqlalchemy.engine.reflection import Inspector +from sqlalchemy.util.compat import b class CompileTest(fixtures.TestBase, AssertsCompiledSQL): __dialect__ = mssql.dialect() @@ -1935,7 +1936,7 @@ class MonkeyPatchedBinaryTest(fixtures.TestBase): def test_bytes(self): module = __import__('pymssql') - input = b'\x80\x03]q\x00X\x03\x00\x00\x00oneq\x01a.' + input = b('\x80\x03]q\x00X\x03\x00\x00\x00oneq\x01a.') expected_result = input result = module.Binary(input) eq_(result, expected_result) -- 2.47.2