fix typo DateType -> DateTimeType, fixes #3069
This commit is contained in:
parent
ba6261c8e7
commit
7e2f732d7a
|
@ -0,0 +1 @@
|
|||
Fix isinstance for DateTime (was confused with Date).
|
|
@ -228,7 +228,7 @@ pub struct PyDateTime(PyAny);
|
|||
pyobject_native_type!(
|
||||
PyDateTime,
|
||||
crate::ffi::PyDateTime_DateTime,
|
||||
*ensure_datetime_api(Python::assume_gil_acquired()).DateType,
|
||||
*ensure_datetime_api(Python::assume_gil_acquired()).DateTimeType,
|
||||
#module=Some("datetime"),
|
||||
#checkfunction=PyDateTime_Check
|
||||
);
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#![cfg(not(Py_LIMITED_API))]
|
||||
|
||||
use pyo3::prelude::*;
|
||||
use pyo3::types::{timezone_utc, IntoPyDict};
|
||||
use pyo3::types::{timezone_utc, IntoPyDict, PyDate, PyDateTime, PyTime};
|
||||
use pyo3_ffi::PyDateTime_IMPORT;
|
||||
|
||||
fn _get_subclasses<'p>(
|
||||
|
@ -61,6 +61,9 @@ fn test_date_check() {
|
|||
assert_check_exact!(PyDate_Check, PyDate_CheckExact, obj);
|
||||
assert_check_only!(PyDate_Check, PyDate_CheckExact, sub_obj);
|
||||
assert_check_only!(PyDate_Check, PyDate_CheckExact, sub_sub_obj);
|
||||
assert!(obj.is_instance_of::<PyDate>().unwrap());
|
||||
assert!(!obj.is_instance_of::<PyTime>().unwrap());
|
||||
assert!(!obj.is_instance_of::<PyDateTime>().unwrap());
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -73,6 +76,9 @@ fn test_time_check() {
|
|||
assert_check_exact!(PyTime_Check, PyTime_CheckExact, obj);
|
||||
assert_check_only!(PyTime_Check, PyTime_CheckExact, sub_obj);
|
||||
assert_check_only!(PyTime_Check, PyTime_CheckExact, sub_sub_obj);
|
||||
assert!(!obj.is_instance_of::<PyDate>().unwrap());
|
||||
assert!(obj.is_instance_of::<PyTime>().unwrap());
|
||||
assert!(!obj.is_instance_of::<PyDateTime>().unwrap());
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -88,6 +94,9 @@ fn test_datetime_check() {
|
|||
assert_check_exact!(PyDateTime_Check, PyDateTime_CheckExact, obj);
|
||||
assert_check_only!(PyDateTime_Check, PyDateTime_CheckExact, sub_obj);
|
||||
assert_check_only!(PyDateTime_Check, PyDateTime_CheckExact, sub_sub_obj);
|
||||
assert!(obj.is_instance_of::<PyDate>().unwrap());
|
||||
assert!(!obj.is_instance_of::<PyTime>().unwrap());
|
||||
assert!(obj.is_instance_of::<PyDateTime>().unwrap());
|
||||
});
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue