From: Matt Benjamin Date: Thu, 18 Apr 2024 19:26:00 +0000 (-0400) Subject: rgw_cksum: test round-trip constructor (armored) X-Git-Tag: v20.0.0~1598^2~8 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=d616de4b3721d59bfce3be554095603b561604cb;p=ceph.git rgw_cksum: test round-trip constructor (armored) I.e., prove cksum == Cksum(cksum.to_armor().c_str()) Signed-off-by: Matt Benjamin --- diff --git a/src/test/rgw/test_rgw_cksum.cc b/src/test/rgw/test_rgw_cksum.cc index c4655ba3a244..603197d41f9d 100644 --- a/src/test/rgw/test_rgw_cksum.cc +++ b/src/test/rgw/test_rgw_cksum.cc @@ -328,6 +328,29 @@ TEST(RGWCksum, DigestBL) ASSERT_EQ(cksum1.to_string(), cksum3.to_string()); } /* for t1, ... */ } + + + + + //foop +TEST(RGWCksum, CtorUnarmor) +{ + auto t = cksum::Type::sha256; + DigestVariant dv = rgw::cksum::digest_factory(t); + Digest *digest = get_digest(dv); + + ASSERT_NE(digest, nullptr); + + digest->Update((const unsigned char *) lorem.c_str(), + lorem.length()); + + auto cksum1 = rgw::cksum::finalize_digest(digest, t); + auto armored_text1 = cksum1.to_armor(); + auto cksum2 = rgw::cksum::Cksum(cksum1.type, armored_text1.c_str()); + + ASSERT_EQ(armored_text1, cksum2.to_armor()); +} + } /* namespace */ int main(int argc, char *argv[])