#include "base/feature_list.h"
#include "base/functional/bind.h"
#include "base/test/scoped_feature_list.h"
#include "chrome/browser/optimization_guide/mock_optimization_guide_keyed_service.h"
#include "chrome/browser/optimization_guide/optimization_guide_keyed_service_factory.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/signin/identity_manager_factory.h"
#include "chrome/browser/ui/browser_element_identifiers.h"
#include "chrome/browser/ui/webui/feedback/feedback_dialog.h"
#include "chrome/browser/ui/webui/side_panel/customize_chrome/wallpaper_search/wallpaper_search_string_map.h"
#include "chrome/common/pref_names.h"
#include "chrome/common/webui_url_constants.h"
#include "chrome/test/interaction/interaction_test_util_browser.h"
#include "chrome/test/interaction/interactive_browser_test.h"
#include "chrome/test/interaction/webcontents_interaction_test_util.h"
#include "components/optimization_guide/core/model_execution/feature_keys.h"
#include "components/optimization_guide/core/model_execution/model_execution_features.h"
#include "components/optimization_guide/core/optimization_guide_features.h"
#include "components/optimization_guide/core/optimization_guide_prefs.h"
#include "components/optimization_guide/proto/model_quality_service.pb.h"
#include "components/search/ntp_features.h"
#include "components/signin/public/identity_manager/identity_manager.h"
#include "components/signin/public/identity_manager/identity_test_utils.h"
#include "content/public/test/browser_test.h"
#include "content/public/test/url_loader_interceptor.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "ui/base/interaction/element_identifier.h"
#include "ui/base/interaction/interaction_sequence.h"
#include "ui/base/ui_base_features.h"
#include "ui/gfx/codec/png_codec.h"
#include "ui/views/interaction/interaction_test_util_views.h"
namespace {
Return;
DEFINE_LOCAL_ELEMENT_IDENTIFIER_VALUE(…);
DEFINE_LOCAL_ELEMENT_IDENTIFIER_VALUE(…);
class MockWallpaperSearchStringMap : public WallpaperSearchStringMap { … };
}
class WallpaperSearchInteractiveTest : public InteractiveBrowserTest { … };
IN_PROC_BROWSER_TEST_F(WallpaperSearchInteractiveTest,
NTPWallpaperSearchButtonVisibilityDependsOnSettings) { … }
class WallpaperSearchOptimizationGuideInteractiveTest
: public WallpaperSearchInteractiveTest { … };
IN_PROC_BROWSER_TEST_F(WallpaperSearchOptimizationGuideInteractiveTest,
CustomizeButtonsWorkTogether) { … }
IN_PROC_BROWSER_TEST_F(WallpaperSearchOptimizationGuideInteractiveTest,
NTPButtonAnimatesUnderThreshold) { … }
IN_PROC_BROWSER_TEST_F(WallpaperSearchOptimizationGuideInteractiveTest,
NTPButtonDoesNotAnimateAboveThreshold) { … }
IN_PROC_BROWSER_TEST_F(WallpaperSearchOptimizationGuideInteractiveTest,
SearchesAndSetsNewAndHistoricalResults) { … }
#if !BUILDFLAG(IS_CHROMEOS)
IN_PROC_BROWSER_TEST_F(WallpaperSearchOptimizationGuideInteractiveTest,
FeedbackDialogShowsOnThumbsDown) { … }
#endif
IN_PROC_BROWSER_TEST_F(WallpaperSearchOptimizationGuideInteractiveTest,
DescriptorErrorCTANavigatesToThemesPage) { … }
class NTPWallpaperSearchButtonAnimationTest
: public WallpaperSearchOptimizationGuideInteractiveTest { … };
IN_PROC_BROWSER_TEST_F(NTPWallpaperSearchButtonAnimationTest,
AnimatesUnconditionally) { … }