28 lines
		
	
	
		
			975 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			975 B
		
	
	
	
		
			Python
		
	
	
	
	
	
import pandas as pd
 | 
						|
import pandas._testing as tm
 | 
						|
 | 
						|
 | 
						|
class TestUnaryOps:
 | 
						|
    def test_invert(self):
 | 
						|
        a = pd.array([True, False, None], dtype="boolean")
 | 
						|
        expected = pd.array([False, True, None], dtype="boolean")
 | 
						|
        tm.assert_extension_array_equal(~a, expected)
 | 
						|
 | 
						|
        expected = pd.Series(expected, index=["a", "b", "c"], name="name")
 | 
						|
        result = ~pd.Series(a, index=["a", "b", "c"], name="name")
 | 
						|
        tm.assert_series_equal(result, expected)
 | 
						|
 | 
						|
        df = pd.DataFrame({"A": a, "B": [True, False, False]}, index=["a", "b", "c"])
 | 
						|
        result = ~df
 | 
						|
        expected = pd.DataFrame(
 | 
						|
            {"A": expected, "B": [False, True, True]}, index=["a", "b", "c"]
 | 
						|
        )
 | 
						|
        tm.assert_frame_equal(result, expected)
 | 
						|
 | 
						|
    def test_abs(self):
 | 
						|
        # matching numpy behavior, abs is the identity function
 | 
						|
        arr = pd.array([True, False, None], dtype="boolean")
 | 
						|
        result = abs(arr)
 | 
						|
 | 
						|
        tm.assert_extension_array_equal(result, arr)
 |