Commit 7493fb31 authored by nancylingwang's avatar nancylingwang Committed by Commit Bot

Fix the flaky unit test BuiltInAppTest.Build.

The new app icon factory code in AppService calls
display::Screen::GetScreen to get the scale, so in unit tests, sometime,
it crashes:
0x7f3430a96390 (/lib/x86_64-linux-gnu/libpthread-2.23.so+0x1138f)
#4 0x558ca24e91ea (anonymous namespace)::GetPrimaryDisplayScaleFactor()

Modify unit tests to set the TestScreen. Built bots run 20 times, and
there is no flaky tests for BuiltInAppTest.Build.

BUG=1115837

Change-Id: Id3ad017f5e15dbadfc6b28ef0d65295bfcc799b0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2379419
Commit-Queue: Nancy Wang <nancylingwang@chromium.org>
Reviewed-by: default avatarXiyuan Xia <xiyuan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#802860}
parent 5b2f993b
......@@ -61,8 +61,11 @@
#include "extensions/browser/uninstall_reason.h"
#include "extensions/common/extension_set.h"
#include "extensions/common/manifest.h"
#include "ui/display/test/scoped_screen_override.h"
#include "ui/display/test/test_screen.h"
using crostini::CrostiniTestHelper;
using display::test::ScopedScreenOverride;
using extensions::AppSorting;
using extensions::ExtensionSystem;
using plugin_vm::PluginVmTestHelper;
......@@ -150,6 +153,8 @@ class AppServiceAppModelBuilderTest
scoped_feature_list_.InitAndDisableFeature(
features::kDesktopPWAsWithoutExtensions);
}
scoped_screen_override_ =
std::make_unique<ScopedScreenOverride>(&test_screen_);
}
~AppServiceAppModelBuilderTest() override {}
......@@ -188,6 +193,8 @@ class AppServiceAppModelBuilderTest
std::unique_ptr<AppServiceAppModelBuilder> builder_;
std::unique_ptr<FakeAppListModelUpdater> model_updater_;
std::unique_ptr<test::TestAppListControllerDelegate> controller_;
display::test::TestScreen test_screen_;
std::unique_ptr<ScopedScreenOverride> scoped_screen_override_;
};
class BuiltInAppTest : public AppServiceAppModelBuilderTest {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment