| Index: chrome/browser/ui/test/test_browser_dialog.cc
|
| diff --git a/chrome/browser/ui/test/test_browser_dialog.cc b/chrome/browser/ui/test/test_browser_dialog.cc
|
| index 75aff27f6ab391a12d30d0544041fe9b4b5f31e6..7360993bff252020f81b4c61a0a9a053481e93a4 100644
|
| --- a/chrome/browser/ui/test/test_browser_dialog.cc
|
| +++ b/chrome/browser/ui/test/test_browser_dialog.cc
|
| @@ -111,6 +111,17 @@ void TestBrowserDialog::RunDialog() {
|
| auto added = base::STLSetDifference<std::vector<views::Widget*>>(
|
| widgets_after, widgets_before);
|
|
|
| + if (added.size() > 1) {
|
| + // Some tests create a standalone window to anchor a dialog. In those cases,
|
| + // ignore added Widgets that are not dialogs.
|
| + for (auto it = added.begin(); it != added.end();) {
|
| + if (!(*it)->widget_delegate()->AsDialogDelegate())
|
| + it = added.erase(it);
|
| + else
|
| + ++it;
|
| + }
|
| + }
|
| +
|
| // This can fail if no dialog was shown, if the dialog shown wasn't a toolkit-
|
| // views dialog, or if more than one child dialog was shown.
|
| ASSERT_EQ(1u, added.size());
|
|
|