Index: base/win/scoped_handle_unittest.cc |
diff --git a/base/win/scoped_handle_unittest.cc b/base/win/scoped_handle_unittest.cc |
index b9663ef437c94db4c7458c607498f2fa5c5899e6..b573b66450195bfc9f02193564d846b32fb160fe 100644 |
--- a/base/win/scoped_handle_unittest.cc |
+++ b/base/win/scoped_handle_unittest.cc |
@@ -2,16 +2,9 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#include <windows.h> |
-#include <winternl.h> |
- |
#include "base/win/scoped_handle.h" |
-#include "base/win/windows_version.h" |
#include "testing/gtest/include/gtest/gtest.h" |
- |
-namespace base { |
-namespace win { |
TEST(ScopedHandleTest, ScopedHandle) { |
// Any illegal error code will do. We just need to test that it is preserved |
@@ -37,75 +30,3 @@ |
handle_holder = handle_source.Pass(); |
EXPECT_EQ(magic_error, ::GetLastError()); |
} |
- |
-// This test requires that the CloseHandle hook be in place. |
-#if !defined(DISABLE_HANDLE_VERIFIER_HOOKS) |
-TEST(ScopedHandleTest, ActiveVerifierCloseTracked) { |
-#if defined(_DEBUG) |
- // Handle hooks cause shutdown asserts in Debug on Windows 7. crbug.com/571304 |
- if (base::win::GetVersion() < base::win::VERSION_WIN8) |
- return; |
-#endif |
- HANDLE handle = ::CreateMutex(nullptr, FALSE, nullptr); |
- ASSERT_NE(HANDLE(NULL), handle); |
- ASSERT_DEATH({ |
- base::win::ScopedHandle handle_holder(handle); |
- // Calling CloseHandle on a tracked handle should crash. |
- ::CloseHandle(handle); |
- }, "CloseHandle called on tracked handle."); |
-} |
-#endif |
- |
-TEST(ScopedHandleTest, ActiveVerifierTrackedHasBeenClosed) { |
- HANDLE handle = ::CreateMutex(nullptr, FALSE, nullptr); |
- ASSERT_NE(HANDLE(NULL), handle); |
- typedef NTSTATUS(WINAPI * NtCloseFunc)(HANDLE); |
- NtCloseFunc ntclose = reinterpret_cast<NtCloseFunc>( |
- GetProcAddress(GetModuleHandle(L"ntdll.dll"), "NtClose")); |
- ASSERT_NE(nullptr, ntclose); |
- |
- ASSERT_DEATH({ |
- base::win::ScopedHandle handle_holder(handle); |
- ntclose(handle); |
- // Destructing a ScopedHandle with an illegally closed handle should fail. |
- }, "CloseHandle failed."); |
-} |
- |
-TEST(ScopedHandleTest, ActiveVerifierDoubleTracking) { |
- HANDLE handle = ::CreateMutex(nullptr, FALSE, nullptr); |
- ASSERT_NE(HANDLE(NULL), handle); |
- |
- base::win::ScopedHandle handle_holder(handle); |
- |
- ASSERT_DEATH({ |
- base::win::ScopedHandle handle_holder2(handle); |
- }, "Attempt to start tracking already tracked handle."); |
-} |
- |
-TEST(ScopedHandleTest, ActiveVerifierWrongOwner) { |
- HANDLE handle = ::CreateMutex(nullptr, FALSE, nullptr); |
- ASSERT_NE(HANDLE(NULL), handle); |
- |
- base::win::ScopedHandle handle_holder(handle); |
- ASSERT_DEATH({ |
- base::win::ScopedHandle handle_holder2; |
- handle_holder2.handle_ = handle; |
- }, "Attempting to close a handle not owned by opener."); |
- ASSERT_TRUE(handle_holder.IsValid()); |
- handle_holder.Close(); |
-} |
- |
-TEST(ScopedHandleTest, ActiveVerifierUntrackedHandle) { |
- HANDLE handle = ::CreateMutex(nullptr, FALSE, nullptr); |
- ASSERT_NE(HANDLE(NULL), handle); |
- |
- ASSERT_DEATH({ |
- base::win::ScopedHandle handle_holder; |
- handle_holder.handle_ = handle; |
- }, "Attempting to close an untracked handle."); |
- |
- ASSERT_TRUE(::CloseHandle(handle)); |
-} |
- |
-} // namespace win |
-} // namespace base |