From 91c1a228a65c790e43fde6cccba9a122ce6a5929 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Fri, 14 Oct 2016 15:35:06 -0400 Subject: [PATCH] ceph_test_objectstore: test unprintable chars Signed-off-by: Sage Weil --- src/test/objectstore/store_test.cc | 31 ++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/src/test/objectstore/store_test.cc b/src/test/objectstore/store_test.cc index f519135e46e89..f219566ef7bb3 100644 --- a/src/test/objectstore/store_test.cc +++ b/src/test/objectstore/store_test.cc @@ -229,6 +229,37 @@ TEST_P(StoreTest, IORemount) { } } +TEST_P(StoreTest, UnprintableCharsName) { + ObjectStore::Sequencer osr("test"); + coll_t cid; + string name = "funnychars_"; + for (unsigned i = 0; i < 256; ++i) { + name.push_back(i); + } + ghobject_t oid(hobject_t(sobject_t(name, CEPH_NOSNAP))); + int r; + { + cerr << "create collection + object" << std::endl; + ObjectStore::Transaction t; + t.create_collection(cid, 0); + t.touch(cid, oid); + r = apply_transaction(store, &osr, std::move(t)); + ASSERT_EQ(r, 0); + } + r = store->umount(); + ASSERT_EQ(0, r); + r = store->mount(); + ASSERT_EQ(0, r); + { + cout << "removing" << std::endl; + ObjectStore::Transaction t; + t.remove(cid, oid); + t.remove_collection(cid); + r = apply_transaction(store, &osr, std::move(t)); + ASSERT_EQ(r, 0); + } +} + TEST_P(StoreTest, FiemapEmpty) { ObjectStore::Sequencer osr("test"); coll_t cid; -- 2.39.5