]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
unittest_cdc: add test with a specific chunking result
authorSage Weil <sage@newdream.net>
Sat, 16 May 2020 14:28:11 +0000 (09:28 -0500)
committerSage Weil <sage@newdream.net>
Wed, 27 May 2020 12:47:28 +0000 (07:47 -0500)
Canary for alg changes

Signed-off-by: Sage Weil <sage@newdream.net>
src/test/common/test_cdc.cc

index 7e89bb755c6b65cc038cdfea71d1792ea9dcf650..b34ecac3f3b379484205d8bd0b0a81fe8e42d337 100644 (file)
@@ -105,6 +105,21 @@ TEST_P(CDCTest, insert_middle)
   }
 }
 
+TEST_P(CDCTest, specific_result)
+{
+  map<string,vector<pair<uint64_t,uint64_t>>> expected = {
+    {"fixed", { {0, 262144}, {262144, 262144}, {524288, 262144}, {786432, 262144}, {1048576, 262144}, {1310720, 262144}, {1572864, 262144}, {1835008, 262144}, {2097152, 262144}, {2359296, 262144}, {2621440, 262144}, {2883584, 262144}, {3145728, 262144}, {3407872, 262144}, {3670016, 262144}, {3932160, 262144} }},
+    {"fastcdc", { {0, 151460}, {151460, 441676}, {593136, 407491}, {1000627, 425767}, {1426394, 602875}, {2029269, 327307}, {2356576, 155515}, {2512091, 159392}, {2671483, 829416}, {3500899, 539667}, {4040566, 153738}}},
+  };
+
+  bufferlist bl;
+  generate_buffer(4*1024*1024, &bl);
+  vector<pair<uint64_t,uint64_t>> chunks;
+  cdc->calc_chunks(bl, &chunks);
+  ASSERT_EQ(chunks, expected[GetParam()]);
+}
+
+
 void do_size_histogram(CDC& cdc, bufferlist& bl,
                       map<int,int> *h)
 {