]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
distinguish between small, large, and many significant digits. the irony
authorMike Bayer <mike_mp@zzzcomputing.com>
Fri, 19 Mar 2010 15:45:42 +0000 (11:45 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Fri, 19 Mar 2010 15:45:42 +0000 (11:45 -0400)
that oracle and sybase are the ones that have the most issues with decimal numbers.

test/sql/test_types.py

index 341e9516e3bbec4f338a86dd32d755b7a982b0e7..9c31eefcee0585b79578798f9b463fa760980ceb 100644 (file)
@@ -1192,7 +1192,6 @@ class NumericTest(TestBase):
     
     @testing.fails_on("sybase+pyodbc", 
                         "Don't know how do get these values through FreeTDS + Sybase")
-    @testing.fails_on('sqlite', 'The 319438... number fails.')
     def test_enotation_decimal_large(self):
         """test exceedingly large decimals.
 
@@ -1200,7 +1199,6 @@ class NumericTest(TestBase):
 
         numbers = set([
             decimal.Decimal('4E+8'),
-            decimal.Decimal("31943874831932418390.01"),
             decimal.Decimal("5748E+15"),
             decimal.Decimal('1.521E+15'),
             decimal.Decimal('00000000000000.1E+12'),
@@ -1210,6 +1208,19 @@ class NumericTest(TestBase):
             numbers,
             numbers
         )
+    
+    @testing.fails_on('sqlite', 'TODO')
+    @testing.fails_on('oracle', 'TODO')
+    @testing.fails_on('sybase', 'TODO')
+    def test_many_significant_digits(self):
+        numbers = set([
+            decimal.Decimal("31943874831932418390.01"),
+        ])
+        self._do_test(
+            Numeric(precision=25, scale=2),
+            numbers,
+            numbers
+        )