X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fceph%2Fsrc%2Ftest%2Fcommon%2Ftest_mutex.cc;fp=src%2Fceph%2Fsrc%2Ftest%2Fcommon%2Ftest_mutex.cc;h=0000000000000000000000000000000000000000;hb=7da45d65be36d36b880cc55c5036e96c24b53f00;hp=b62341e71422120f2b53ead160faee7946372858;hpb=691462d09d0987b47e112d6ee8740375df3c51b2;p=stor4nfv.git diff --git a/src/ceph/src/test/common/test_mutex.cc b/src/ceph/src/test/common/test_mutex.cc deleted file mode 100644 index b62341e..0000000 --- a/src/ceph/src/test/common/test_mutex.cc +++ /dev/null @@ -1,68 +0,0 @@ -// -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*- -// vim: ts=8 sw=2 smarttab -/* - * Ceph - scalable distributed file system - * - */ - -#include -#include "gtest/gtest.h" -#include "common/ceph_context.h" -#include "common/config.h" -#include "include/coredumpctl.h" - -/* - * Override normal ceph assert. - * It is needed to prevent hang when we assert() and THEN still wait on lock(). - */ -namespace ceph -{ - void __ceph_assert_fail(const char *assertion, const char *file, int line, - const char *func) - { - throw 0; - } -} - -void do_init() { - static CephContext* cct = nullptr; - if (cct == nullptr) { - cct = new CephContext(0); - lockdep_register_ceph_context(cct); - } -} - -TEST(Mutex, NormalAsserts) { - Mutex* m = new Mutex("Normal",false); - m->Lock(); - EXPECT_THROW(m->Lock(), int); -} - -TEST(Mutex, RecursiveWithLockdep) { - do_init(); - g_lockdep = 1; - Mutex* m = new Mutex("Recursive1",true); - m->Lock(); - m->Lock(); - m->Unlock(); - m->Unlock(); - delete m; -} - -TEST(Mutex, RecursiveWithoutLockdep) { - do_init(); - g_lockdep = 0; - Mutex* m = new Mutex("Recursive2",true); - m->Lock(); - m->Lock(); - m->Unlock(); - m->Unlock(); - delete m; -} - -TEST(Mutex, DeleteLocked) { - Mutex* m = new Mutex("Recursive3",false); - m->Lock(); - PrCtl unset_dumpable; - EXPECT_DEATH(delete m,".*"); -}