1 #ifndef TEST_CEPH_TIME_H
2 #define TEST_CEPH_TIME_H
5 #include "common/ceph_time.h"
7 // wrapper for ceph::real_time that implements the dencoder interface
8 class real_time_wrapper {
11 real_time_wrapper() = default;
12 real_time_wrapper(const ceph::real_time& t) : t(t) {}
14 void encode(bufferlist& bl) const {
17 void decode(bufferlist::iterator &p) {
20 void dump(Formatter* f) {
21 auto epoch_time = ceph::real_clock::to_time_t(t);
22 f->dump_string("time", std::ctime(&epoch_time));
24 static void generate_test_instances(std::list<real_time_wrapper*>& ls) {
25 constexpr time_t t{455500800}; // Ghostbusters release date
26 ls.push_back(new real_time_wrapper(ceph::real_clock::from_time_t(t)));
29 WRITE_CLASS_ENCODER(real_time_wrapper)