[Modules] Move the LeakDetector header into the IR library where the
[oota-llvm.git] / unittests / IR / LeakDetectorTest.cpp
1 //===- LeakDetectorTest.cpp -----------------------------------------------===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9
10 #include "llvm/IR/LeakDetector.h"
11 #include "gtest/gtest.h"
12
13 using namespace llvm;
14
15 namespace {
16
17 #ifdef GTEST_HAS_DEATH_TEST
18 #ifndef NDEBUG
19 TEST(LeakDetector, Death1) {
20   LeakDetector::addGarbageObject((void*) 1);
21   LeakDetector::addGarbageObject((void*) 2);
22
23   EXPECT_DEATH(LeakDetector::addGarbageObject((void*) 1),
24                ".*Ts.count\\(o\\) == 0 && \"Object already in set!\"");
25   EXPECT_DEATH(LeakDetector::addGarbageObject((void*) 2),
26                "Cache != o && \"Object already in set!\"");
27 }
28 #endif
29 #endif
30
31 }