From b54da60aa04ac078ebd5709647409636a8579c9e Mon Sep 17 00:00:00 2001 From: Sampson Date: Sun, 13 Oct 2024 07:51:51 -0500 Subject: [PATCH 1/2] Improves teardown to prevent failing test on Win Resolves https://github.com/brave/brave-browser/issues/41605 --- .../test/render_view_context_menu_unittest.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/browser/renderer_context_menu/test/render_view_context_menu_unittest.cc b/browser/renderer_context_menu/test/render_view_context_menu_unittest.cc index 8aa8a04f1b78..c3a5620303f6 100644 --- a/browser/renderer_context_menu/test/render_view_context_menu_unittest.cc +++ b/browser/renderer_context_menu/test/render_view_context_menu_unittest.cc @@ -26,6 +26,7 @@ #include "content/public/test/browser_task_environment.h" #include "testing/gmock/include/gmock/gmock.h" #include "testing/gtest/include/gtest/gtest.h" +#include "ui/base/clipboard/clipboard.h" #if BUILDFLAG(ENABLE_AI_CHAT) #include "brave/components/ai_chat/core/common/pref_names.h" @@ -133,6 +134,7 @@ class BraveRenderViewContextMenuTest : public testing::Test { client_.reset(); browser_.reset(); profile_.reset(); + ui::Clipboard::DestroyClipboardForCurrentThread(); } PrefService* GetPrefs() { return profile_->GetPrefs(); } From 29776a4b4ba224c1a9404fc6a4ce7bc6a26d6331 Mon Sep 17 00:00:00 2001 From: Sampson Date: Thu, 17 Oct 2024 12:01:53 -0700 Subject: [PATCH 2/2] Adds clarification note for teardown changes --- .../test/render_view_context_menu_unittest.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/browser/renderer_context_menu/test/render_view_context_menu_unittest.cc b/browser/renderer_context_menu/test/render_view_context_menu_unittest.cc index c3a5620303f6..10fd59a005d3 100644 --- a/browser/renderer_context_menu/test/render_view_context_menu_unittest.cc +++ b/browser/renderer_context_menu/test/render_view_context_menu_unittest.cc @@ -134,6 +134,10 @@ class BraveRenderViewContextMenuTest : public testing::Test { client_.reset(); browser_.reset(); profile_.reset(); + + // We run into a DCHECK on Windows. The scenario is addressed explicitly + // in Chromium's source for MessageWindow::WindowClass::~WindowClass(). + // See base/win/message_window.cc for more information. ui::Clipboard::DestroyClipboardForCurrentThread(); }