From c691b4cbdf7424964f49ac2fd05057514e5856a3 Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Sat, 11 Dec 2010 17:44:46 -0500 Subject: - support for cdecimal - add --with-cdecimal flag to tests, monkeypatches cdecimal in - fix mssql/pyodbc.py to not use private '_int' accessor in decimal conversion routines - pyodbc version 2.1.8 is needed for cdecimal in any case as previous versions also called '_int', 2.1.8 adds the same string logic as our own dialect, so that logic is skipped for modern pyodbc version - make the imports for "Decimal" consistent across the whole lib. not sure yet how we should be importing "Decimal" or what the best way forward is that would allow a clean user-invoked swap of cdecimal; for now, added docs suggesting a global monkeypatch - the two decimal libs are not compatible with each other so any chance of mixing produces serious issues. adding adapters to DBAPIs tedious and adds in-python overhead. suggestions welcome on how we should be doing Decimal/cdecimal. --- test/sql/test_functions.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'test/sql/test_functions.py') diff --git a/test/sql/test_functions.py b/test/sql/test_functions.py index 396eaaf9b..0fb2ca5f7 100644 --- a/test/sql/test_functions.py +++ b/test/sql/test_functions.py @@ -10,7 +10,7 @@ from sqlalchemy import types as sqltypes from test.lib import * from sqlalchemy.sql.functions import GenericFunction from test.lib.testing import eq_ -from decimal import Decimal as _python_Decimal +from sqlalchemy.util.compat import decimal from test.lib import testing from sqlalchemy.databases import * @@ -107,7 +107,7 @@ class CompileTest(TestBase, AssertsCompiledSQL): ((datetime.date(2007, 10, 5), datetime.date(2005, 10, 15)), sqltypes.Date), ((3, 5), sqltypes.Integer), - ((_python_Decimal(3), _python_Decimal(5)), sqltypes.Numeric), + ((decimal.Decimal(3), decimal.Decimal(5)), sqltypes.Numeric), (("foo", "bar"), sqltypes.String), ((datetime.datetime(2007, 10, 5, 8, 3, 34), datetime.datetime(2005, 10, 15, 14, 45, 33)), sqltypes.DateTime) -- cgit v1.2.1