@@ -536,3 +536,44 @@ def test_invert(self):
536
536
ser = tm .makeStringSeries ()
537
537
ser .name = "series"
538
538
tm .assert_series_equal (- (ser < 0 ), ~ (ser < 0 ))
539
+
540
+ @pytest .mark .parametrize (
541
+ "source, target" ,
542
+ [
543
+ ([1 , 2 , 3 ], [- 1 , - 2 , - 3 ]),
544
+ ([1 , 2 , None ], [- 1 , - 2 , None ]),
545
+ ([- 1 , 0 , 1 ], [1 , 0 , - 1 ]),
546
+ ],
547
+ )
548
+ def test_unary_minus_nullable_int (
549
+ self , any_signed_nullable_int_dtype , source , target
550
+ ):
551
+ dtype = any_signed_nullable_int_dtype
552
+ s = pd .Series (source , dtype = dtype )
553
+ result = - s
554
+ expected = pd .Series (target , dtype = dtype )
555
+ tm .assert_series_equal (result , expected )
556
+
557
+ @pytest .mark .parametrize (
558
+ "source" , [[1 , 2 , 3 ], [1 , 2 , None ], [- 1 , 0 , 1 ]],
559
+ )
560
+ def test_unary_plus_nullable_int (self , any_signed_nullable_int_dtype , source ):
561
+ dtype = any_signed_nullable_int_dtype
562
+ expected = pd .Series (source , dtype = dtype )
563
+ result = + expected
564
+ tm .assert_series_equal (result , expected )
565
+
566
+ @pytest .mark .parametrize (
567
+ "source, target" ,
568
+ [
569
+ ([1 , 2 , 3 ], [1 , 2 , 3 ]),
570
+ ([1 , - 2 , None ], [1 , 2 , None ]),
571
+ ([- 1 , 0 , 1 ], [1 , 0 , 1 ]),
572
+ ],
573
+ )
574
+ def test_abs_nullable_int (self , any_signed_nullable_int_dtype , source , target ):
575
+ dtype = any_signed_nullable_int_dtype
576
+ s = pd .Series (source , dtype = dtype )
577
+ result = abs (s )
578
+ expected = pd .Series (target , dtype = dtype )
579
+ tm .assert_series_equal (result , expected )
0 commit comments