summaryrefslogtreecommitdiff
path: root/chromium/media/base/win/dxgi_device_scope_handle_unittest.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/media/base/win/dxgi_device_scope_handle_unittest.cc')
-rw-r--r--chromium/media/base/win/dxgi_device_scope_handle_unittest.cc24
1 files changed, 22 insertions, 2 deletions
diff --git a/chromium/media/base/win/dxgi_device_scope_handle_unittest.cc b/chromium/media/base/win/dxgi_device_scope_handle_unittest.cc
index 5058d1bfd31..be16636583e 100644
--- a/chromium/media/base/win/dxgi_device_scope_handle_unittest.cc
+++ b/chromium/media/base/win/dxgi_device_scope_handle_unittest.cc
@@ -7,7 +7,7 @@
#include "base/win/windows_version.h"
#include "media/base/test_helpers.h"
-#include "media/base/win/mf_helpers.h"
+#include "media/base/win/dxgi_device_manager.h"
#include "media/base/win/mf_initializer.h"
namespace media {
@@ -66,7 +66,7 @@ class DXGIDeviceScopedHandleTest : public testing::Test {
const bool test_supported_;
};
-TEST_F(DXGIDeviceScopedHandleTest, UseDXGIDeviceScopedHandle) {
+TEST_F(DXGIDeviceScopedHandleTest, LockDevice) {
if (!test_supported_)
return;
@@ -88,4 +88,24 @@ TEST_F(DXGIDeviceScopedHandleTest, UseDXGIDeviceScopedHandle) {
ASSERT_HRESULT_SUCCEEDED(device_handle_3.LockDevice(IID_PPV_ARGS(&device3)));
}
+TEST_F(DXGIDeviceScopedHandleTest, GetDevice) {
+ if (!test_supported_)
+ return;
+
+ {
+ // Create DXGIDeviceScopedHandle in an inner scope.
+ DXGIDeviceScopedHandle device_handle_1(dxgi_device_man_.Get());
+ }
+ {
+ // Create DXGIDeviceScopedHandle in an inner scope with GetDevice call.
+ DXGIDeviceScopedHandle device_handle_2(dxgi_device_man_.Get());
+ ComPtr<ID3D11Device> device2 = device_handle_2.GetDevice();
+ EXPECT_NE(device2, nullptr);
+ }
+ // Use the device in an outer scope.
+ DXGIDeviceScopedHandle device_handle_3(dxgi_device_man_.Get());
+ ComPtr<ID3D11Device> device3 = device_handle_3.GetDevice();
+ EXPECT_NE(device3, nullptr);
+}
+
} // namespace media \ No newline at end of file