def test_unable_to_set_attributes(self, lineage: Lineage): x = lineage.view() with pytest.raises(RuntimeError): x.names = lineage.names[::-1] with pytest.raises(RuntimeError): x.colors = lineage.colors[::-1]
def test_shares_memory(self, lineage: Lineage): x = lineage.view() assert x.owner is lineage assert isinstance(x.T, LineageView) assert np.shares_memory(x.X, lineage.X) assert np.shares_memory(x.names, lineage.names) assert np.shares_memory(x.colors, lineage.colors) assert x._names_to_ixs is lineage._names_to_ixs
def test_double_view_owner(self, lineage: Lineage): x = lineage.view().view() assert x.owner is lineage