@@ -1443,6 +1443,11 @@ def test_alltypes_polars(self):
14431443 out = cur .fetchone ()
14441444 row = dict (zip (names , out .row (0 )))
14451445
1446+ # Recent versions of polars have a problem with decimals
1447+ class FixCompare (str ):
1448+ def __eq__ (self , other ):
1449+ return super ().__eq__ (other .replace ('precision=None' , 'precision=22' ))
1450+
14461451 dtypes = [
14471452 ('id' , 'Int32' ),
14481453 ('tinyint' , 'Int8' ),
@@ -1464,10 +1469,10 @@ def test_alltypes_polars(self):
14641469 ('float' , 'Float32' ),
14651470 ('double' , 'Float64' ),
14661471 ('real' , 'Float64' ),
1467- ('decimal' , 'Decimal(precision=22, scale=6)' ),
1468- ('dec' , 'Decimal(precision=22, scale=6)' ),
1469- ('fixed' , 'Decimal(precision=22, scale=6)' ),
1470- ('numeric' , 'Decimal(precision=22, scale=6)' ),
1472+ ('decimal' , FixCompare ( 'Decimal(precision=22, scale=6)' ) ),
1473+ ('dec' , FixCompare ( 'Decimal(precision=22, scale=6)' ) ),
1474+ ('fixed' , FixCompare ( 'Decimal(precision=22, scale=6)' ) ),
1475+ ('numeric' , FixCompare ( 'Decimal(precision=22, scale=6)' ) ),
14711476 ('date' , 'Date' ),
14721477 ('time' , "Duration(time_unit='us')" ),
14731478 ('time_6' , "Duration(time_unit='us')" ),
@@ -1585,6 +1590,11 @@ def test_alltypes_no_nulls_polars(self):
15851590 out = cur .fetchone ()
15861591 row = dict (zip (names , out .row (0 )))
15871592
1593+ # Recent versions of polars have a problem with decimals
1594+ class FixCompare (str ):
1595+ def __eq__ (self , other ):
1596+ return super ().__eq__ (other .replace ('precision=None' , 'precision=22' ))
1597+
15881598 dtypes = [
15891599 ('id' , 'Int32' ),
15901600 ('tinyint' , 'Int8' ),
@@ -1606,10 +1616,10 @@ def test_alltypes_no_nulls_polars(self):
16061616 ('float' , 'Float32' ),
16071617 ('double' , 'Float64' ),
16081618 ('real' , 'Float64' ),
1609- ('decimal' , 'Decimal(precision=22, scale=6)' ),
1610- ('dec' , 'Decimal(precision=22, scale=6)' ),
1611- ('fixed' , 'Decimal(precision=22, scale=6)' ),
1612- ('numeric' , 'Decimal(precision=22, scale=6)' ),
1619+ ('decimal' , FixCompare ( 'Decimal(precision=22, scale=6)' ) ),
1620+ ('dec' , FixCompare ( 'Decimal(precision=22, scale=6)' ) ),
1621+ ('fixed' , FixCompare ( 'Decimal(precision=22, scale=6)' ) ),
1622+ ('numeric' , FixCompare ( 'Decimal(precision=22, scale=6)' ) ),
16131623 ('date' , 'Date' ),
16141624 ('time' , "Duration(time_unit='us')" ),
16151625 ('time_6' , "Duration(time_unit='us')" ),
0 commit comments