]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
encoding: add test for ceph::coarse_real_time
authorCasey Bodley <cbodley@redhat.com>
Tue, 8 May 2018 17:52:59 +0000 (13:52 -0400)
committerNathan Cutler <ncutler@suse.com>
Tue, 2 Oct 2018 17:20:00 +0000 (19:20 +0200)
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit e4030eab2a30459ee56ba4510f8233fe4937f77a)

Conflicts:
src/test/encoding/test_ceph_time.h
src/test/encoding/types.h

src/test/encoding/test_ceph_time.h
src/test/encoding/types.h

index 18f89314b7ab86fa8844fc03a6b920046771cdd7..bfd250f98ffdc6a2d5c12ab414e40c71f542133b 100644 (file)
@@ -8,11 +8,13 @@
 #include "common/Formatter.h"
 
 // wrapper for ceph::real_time that implements the dencoder interface
-class real_time_wrapper {
-  ceph::real_time t;
+template <typename Clock>
+class time_point_wrapper {
+  using time_point = typename Clock::time_point;
+  time_point t;
  public:
-  real_time_wrapper() = default;
-  real_time_wrapper(const ceph::real_time& t) : t(t) {}
+  time_point_wrapper() = default;
+  time_point_wrapper(const time_point& t) : t(t) {}
 
   void encode(bufferlist& bl) const {
     using ceph::encode;
@@ -23,14 +25,19 @@ class real_time_wrapper {
     decode(t, p);
   }
   void dump(Formatter* f) {
-    auto epoch_time = ceph::real_clock::to_time_t(t);
+    auto epoch_time = Clock::to_time_t(t);
     f->dump_string("time", std::ctime(&epoch_time));
   }
-  static void generate_test_instances(std::list<real_time_wrapper*>& ls) {
+  static void generate_test_instances(std::list<time_point_wrapper*>& ls) {
     constexpr time_t t{455500800}; // Ghostbusters release date
-    ls.push_back(new real_time_wrapper(ceph::real_clock::from_time_t(t)));
+    ls.push_back(new time_point_wrapper(Clock::from_time_t(t)));
   }
 };
+
+using real_time_wrapper = time_point_wrapper<ceph::real_clock>;
 WRITE_CLASS_ENCODER(real_time_wrapper)
 
+using coarse_real_time_wrapper = time_point_wrapper<ceph::coarse_real_clock>;
+WRITE_CLASS_ENCODER(coarse_real_time_wrapper)
+
 #endif
index 8e9e8f8e61a2a22e79409bc83351d5868ed6250b..d89ab36a392750b3f558d06640ac71e581825dee 100644 (file)
@@ -16,6 +16,7 @@ TYPE(compressible_bloom_filter)
 
 #include "test_ceph_time.h"
 TYPE(real_time_wrapper)
+TYPE(coarse_real_time_wrapper)
 
 #include "test_sstring.h"
 TYPE(sstring_wrapper)