def test_valid(self) -> None: prop = bcpc.Seq(Int) assert prop.is_valid(()) assert prop.is_valid([]) assert prop.is_valid(np.array([1,2,3])) assert prop.is_valid((1, 2)) assert prop.is_valid([1, 2]) assert prop.is_valid(np.array([1, 2]))
def test_invalid(self): prop = bcpc.Seq(Int) assert not prop.is_valid(False) assert not prop.is_valid(True) assert not prop.is_valid(0) assert not prop.is_valid(1) assert not prop.is_valid(0.0) assert not prop.is_valid(1.0) assert not prop.is_valid(1.0 + 1.0j) assert not prop.is_valid("") assert not prop.is_valid(set([])) assert not prop.is_valid({}) assert not prop.is_valid({1, 2}) assert not prop.is_valid({1: 2}) assert not prop.is_valid(_TestHasProps()) assert not prop.is_valid(_TestModel())
def test_str(self): prop = bcpc.Seq(Int) assert str(prop) == "Seq(Int)"
def test_has_ref(self): prop = bcpc.Seq(Int) assert not prop.has_ref prop = bcpc.Seq(Instance(_TestModel)) assert prop.has_ref
def test_with_pandas_valid(self, pd): prop = bcpc.Seq(Int) df = pd.DataFrame([1, 2]) assert prop.is_valid(df.index) assert prop.is_valid(df.iloc[0])
def test_init(self): with pytest.raises(TypeError): bcpc.Seq()