You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			49 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Python
		
	
			
		
		
	
	
			49 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Python
		
	
import pytest
 | 
						|
 | 
						|
import pandas as pd
 | 
						|
 | 
						|
 | 
						|
class TestFlags:
 | 
						|
    def test_equality(self):
 | 
						|
        a = pd.DataFrame().set_flags(allows_duplicate_labels=True).flags
 | 
						|
        b = pd.DataFrame().set_flags(allows_duplicate_labels=False).flags
 | 
						|
 | 
						|
        assert a == a
 | 
						|
        assert b == b
 | 
						|
        assert a != b
 | 
						|
        assert a != 2
 | 
						|
 | 
						|
    def test_set(self):
 | 
						|
        df = pd.DataFrame().set_flags(allows_duplicate_labels=True)
 | 
						|
        a = df.flags
 | 
						|
        a.allows_duplicate_labels = False
 | 
						|
        assert a.allows_duplicate_labels is False
 | 
						|
        a["allows_duplicate_labels"] = True
 | 
						|
        assert a.allows_duplicate_labels is True
 | 
						|
 | 
						|
    def test_repr(self):
 | 
						|
        a = repr(pd.DataFrame({"A"}).set_flags(allows_duplicate_labels=True).flags)
 | 
						|
        assert a == "<Flags(allows_duplicate_labels=True)>"
 | 
						|
        a = repr(pd.DataFrame({"A"}).set_flags(allows_duplicate_labels=False).flags)
 | 
						|
        assert a == "<Flags(allows_duplicate_labels=False)>"
 | 
						|
 | 
						|
    def test_obj_ref(self):
 | 
						|
        df = pd.DataFrame()
 | 
						|
        flags = df.flags
 | 
						|
        del df
 | 
						|
        with pytest.raises(ValueError, match="object has been deleted"):
 | 
						|
            flags.allows_duplicate_labels = True
 | 
						|
 | 
						|
    def test_getitem(self):
 | 
						|
        df = pd.DataFrame()
 | 
						|
        flags = df.flags
 | 
						|
        assert flags["allows_duplicate_labels"] is True
 | 
						|
        flags["allows_duplicate_labels"] = False
 | 
						|
        assert flags["allows_duplicate_labels"] is False
 | 
						|
 | 
						|
        with pytest.raises(KeyError, match="a"):
 | 
						|
            flags["a"]
 | 
						|
 | 
						|
        with pytest.raises(ValueError, match="a"):
 | 
						|
            flags["a"] = 10
 |