Add a few unit tests.
Signed-off-by: Sage Weil <sage@redhat.com>
return (length() % align) == 0;
}
bool is_n_page_sized() const { return is_n_align_sized(CEPH_PAGE_SIZE); }
- bool is_partial() const { return start() > 0 || end() < raw_length(); }
+ bool is_partial() const {
+ return have_raw() && (start() > 0 || end() < raw_length());
+ }
// accessors
raw *get_raw() const { return _raw; }
}
}
+TEST(BufferPtr, is_partial) {
+ bufferptr a;
+ EXPECT_FALSE(a.is_partial());
+ bufferptr b(10);
+ EXPECT_FALSE(b.is_partial());
+ bufferptr c(b, 1, 9);
+ EXPECT_TRUE(c.is_partial());
+ bufferptr d(b, 0, 9);
+ EXPECT_TRUE(d.is_partial());
+}
+
TEST(BufferPtr, accessors) {
unsigned len = 17;
bufferptr ptr(len);