def test_cast_float_to_bool(source_type): DT = dt.Frame( G=[-math.inf, math.inf, math.nan, 0.0, 13.4, 1.0, -1.0, -128], type=source_type) assert DT.type == dt.Type(source_type) RES = DT[:, dt.bool8(f.G)] assert_equals( RES, dt.Frame(G=[True, True, None, False, True, True, True, True]))
def test_query_methods(src): tfloat = dt.Type(src) assert not tfloat.is_array assert not tfloat.is_boolean assert not tfloat.is_compound assert tfloat.is_float assert not tfloat.is_integer assert tfloat.is_numeric assert not tfloat.is_object assert not tfloat.is_string assert not tfloat.is_temporal assert not tfloat.is_void
def test_time64_type_from_pyarrow(pa): # pyarrow.date64: ms since unix epoch assert dt.Type(pa.date64()) == dt.Type.time64
def test_time64_type_from_numpy(np): assert dt.Type(np.dtype("datetime64[s]")) == dt.Type.time64 assert dt.Type(np.dtype("datetime64[ms]")) == dt.Type.time64 assert dt.Type(np.dtype("datetime64[us]")) == dt.Type.time64 assert dt.Type(np.dtype("datetime64[ns]")) == dt.Type.time64
def test_time64_type_from_basic(): assert dt.Type("time") == dt.Type.time64 assert dt.Type("time64") == dt.Type.time64 assert dt.Type(datetime.datetime) == dt.Type.time64
def test_date32_type_from_pyarrow(pa): assert dt.Type(pa.date32()) == dt.Type.date32
def test_date32_type_from_numpy(np): assert dt.Type(np.dtype("datetime64[D]")) == dt.Type.date32 assert dt.Type(np.dtype("datetime64[W]")) == dt.Type.date32 assert dt.Type(np.dtype("datetime64[M]")) == dt.Type.date32 assert dt.Type(np.dtype("datetime64[Y]")) == dt.Type.date32
def test_date32_type_from_basic(): assert dt.Type("date") == dt.Type.date32 assert dt.Type("date32") == dt.Type.date32 assert dt.Type(datetime.date) == dt.Type.date32
def test_cast_int_to_bool(source_stype): DT = dt.Frame(N=[-11, -1, None, 0, 1, 11, 127], stype=source_stype) assert DT.type == dt.Type(source_stype) RES = DT[:, dt.bool8(f.N)] assert_equals(RES, dt.Frame(N=[True, True, None, False, True, True, True]))
def test_void_type_from_basic(): assert dt.Type(None) == dt.Type.void assert dt.Type("void") == dt.Type.void