@@ -1205,7 +1205,9 @@ def setUp(self):
1205
1205
c12 double precision[2],
1206
1206
c13 decimal(10,1)[2],
1207
1207
c14 decimal(10,5)[2],
1208
- c15 decimal(18,5)[2]
1208
+ c15 decimal(18,5)[2],
1209
+ c16 boolean[2],
1210
+ c17 decfloat[2]
1209
1211
)
1210
1212
"""
1211
1213
#
@@ -2681,7 +2683,7 @@ def test_07_select_int128(self):
2681
2683
self .assertEqual (n128 , d )
2682
2684
self .assertIsInstance (d128 , decimal .Decimal )
2683
2685
self .assertEqual (d128 , d )
2684
- def test_08_select_int128 (self ):
2686
+ def test_08_insert_int128 (self ):
2685
2687
data = {5 : (decimal .Decimal ('1111111111222222222233333333.334444' ),decimal .Decimal ('1111111111222222222233333333.334444' )),
2686
2688
6 : (decimal .Decimal ('111111111122222222223333333333.4444' ),decimal .Decimal ('111111111122222222223333333333.4444' )),
2687
2689
7 : (decimal .Decimal ('111111111122222222223333333333.444455' ),decimal .Decimal ('111111111122222222223333333333.444455' )),
@@ -2698,6 +2700,53 @@ def test_08_select_int128(self):
2698
2700
self .assertEqual (n128 , d [1 ])
2699
2701
self .assertIsInstance (d128 , decimal .Decimal )
2700
2702
self .assertEqual (d128 , d [1 ])
2703
+ def test_09_array_defloat (self ):
2704
+ d_df = [decimal .Decimal ('1111111111222222222233333333334444' ),
2705
+ decimal .Decimal ('1111111111222222222233333333334445' )]
2706
+ d_df16 = [decimal .Decimal ('1111111111222222' ),
2707
+ decimal .Decimal ('1111111111222223' )]
2708
+ d_df34 = [decimal .Decimal ('1111111111222222222233333333334444' ),
2709
+ decimal .Decimal ('1111111111222222222233333333334445' )]
2710
+ data = {9 : (d_df , d_df16 , d_df34 ),
2711
+ }
2712
+ with self .con .cursor () as cur :
2713
+ for pk , d in data .items ():
2714
+ cur .execute ("insert into FB4 (PK,ADF,ADF16,ADF34) values (?, ?, ?, ?)" , (pk , d [0 ], d [1 ], d [2 ]))
2715
+ self .con .commit ()
2716
+ cur .execute ('select PK,ADF,ADF16,ADF34 from FB4 where PK = 9' )
2717
+ for pk , adf , adf16 , adf34 in cur :
2718
+ d = data [pk ]
2719
+ self .assertIsInstance (adf , list )
2720
+ for v in adf :
2721
+ self .assertIsInstance (v , decimal .Decimal )
2722
+ self .assertEqual (adf , d_df )
2723
+ self .assertIsInstance (adf16 , list )
2724
+ for v in adf16 :
2725
+ self .assertIsInstance (v , decimal .Decimal )
2726
+ self .assertEqual (adf16 , d_df16 )
2727
+ self .assertIsInstance (adf34 , list )
2728
+ for v in adf34 :
2729
+ self .assertIsInstance (v , decimal .Decimal )
2730
+ self .assertEqual (adf34 , d_df34 )
2731
+ def test_10_array_int128 (self ):
2732
+ d_int128 = [decimal .Decimal ('1111111111222222222233333333.334444' ),
2733
+ decimal .Decimal ('1111111111222222222233333333.334444' )]
2734
+ data = {11 : (d_int128 )}
2735
+ with self .con .cursor () as cur :
2736
+ for pk , d in data .items ():
2737
+ cur .execute ("insert into FB4 (PK,AN128,AD128) values (?, ?, ?)" , (pk , d , d ))
2738
+ self .con .commit ()
2739
+ cur .execute ('select PK,AN128,AD128 from FB4 where PK = 11 order by pk' )
2740
+ for pk , an128 , ad128 in cur :
2741
+ d = data [pk ]
2742
+ self .assertIsInstance (an128 , list )
2743
+ for v in an128 :
2744
+ self .assertIsInstance (v , decimal .Decimal )
2745
+ self .assertEqual (an128 , d )
2746
+ self .assertIsInstance (ad128 , list )
2747
+ for v in ad128 :
2748
+ self .assertIsInstance (v , decimal .Decimal )
2749
+ self .assertEqual (ad128 , d )
2701
2750
2702
2751
class TestIssues (DriverTestBase ):
2703
2752
def setUp (self ):
0 commit comments