aboutsummaryrefslogtreecommitdiffstats
path: root/3rdparty/pybind11/tests/test_chrono.cpp
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/pybind11/tests/test_chrono.cpp')
-rw-r--r--3rdparty/pybind11/tests/test_chrono.cpp29
1 files changed, 29 insertions, 0 deletions
diff --git a/3rdparty/pybind11/tests/test_chrono.cpp b/3rdparty/pybind11/tests/test_chrono.cpp
index 899d08d8..65370508 100644
--- a/3rdparty/pybind11/tests/test_chrono.cpp
+++ b/3rdparty/pybind11/tests/test_chrono.cpp
@@ -10,6 +10,25 @@
#include "pybind11_tests.h"
#include <pybind11/chrono.h>
+#include <chrono>
+
+struct different_resolutions {
+ using time_point_h = std::chrono::time_point<
+ std::chrono::system_clock, std::chrono::hours>;
+ using time_point_m = std::chrono::time_point<
+ std::chrono::system_clock, std::chrono::minutes>;
+ using time_point_s = std::chrono::time_point<
+ std::chrono::system_clock, std::chrono::seconds>;
+ using time_point_ms = std::chrono::time_point<
+ std::chrono::system_clock, std::chrono::milliseconds>;
+ using time_point_us = std::chrono::time_point<
+ std::chrono::system_clock, std::chrono::microseconds>;
+ time_point_h timestamp_h;
+ time_point_m timestamp_m;
+ time_point_s timestamp_s;
+ time_point_ms timestamp_ms;
+ time_point_us timestamp_us;
+};
TEST_SUBMODULE(chrono, m) {
using system_time = std::chrono::system_clock::time_point;
@@ -52,4 +71,14 @@ TEST_SUBMODULE(chrono, m) {
m.def("test_nano_timepoint", [](timestamp start, timespan delta) -> timestamp {
return start + delta;
});
+
+ // Test different resolutions
+ py::class_<different_resolutions>(m, "different_resolutions")
+ .def(py::init<>())
+ .def_readwrite("timestamp_h", &different_resolutions::timestamp_h)
+ .def_readwrite("timestamp_m", &different_resolutions::timestamp_m)
+ .def_readwrite("timestamp_s", &different_resolutions::timestamp_s)
+ .def_readwrite("timestamp_ms", &different_resolutions::timestamp_ms)
+ .def_readwrite("timestamp_us", &different_resolutions::timestamp_us)
+ ;
}