#include "chrome/browser/ui/views/side_panel/companion/exps_registration_success_observer.h"
#include <memory>
#include <utility>
#include "base/command_line.h"
#include "base/feature_list.h"
#include "base/location.h"
#include "base/run_loop.h"
#include "base/strings/strcat.h"
#include "base/task/sequenced_task_runner.h"
#include "base/test/scoped_feature_list.h"
#include "chrome/browser/companion/core/constants.h"
#include "chrome/browser/companion/core/features.h"
#include "chrome/common/pref_names.h"
#include "chrome/test/base/chrome_render_view_host_test_harness.h"
#include "components/prefs/pref_registry_simple.h"
#include "components/prefs/pref_service.h"
#include "components/prefs/testing_pref_service.h"
#include "content/public/browser/web_contents.h"
#include "content/public/test/mock_web_contents_observer.h"
#include "content/public/test/test_renderer_host.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "ui/base/page_transition_types.h"
#include "url/gurl.h"
namespace companion {
namespace {
_;
NiceMock;
Return;
constexpr char kDefaultUrl[] = …;
constexpr char kBlocklistedUrl[] = …;
constexpr char kBlocklistedUrl2[] = …;
constexpr char kExpsRegistationSuccessUrl[] = …;
class MockExpsRegistrationSuccessObserver
: public ExpsRegistrationSuccessObserver { … };
class ExpsRegistrationSuccessObserverTest
: public ChromeRenderViewHostTestHarness { … };
}
TEST_F(ExpsRegistrationSuccessObserverTest, ShowIPHIfAllCriteriaMeets) { … }
TEST_F(ExpsRegistrationSuccessObserverTest, IPHNotShownForChromeUrls) { … }
TEST_F(ExpsRegistrationSuccessObserverTest, IPHNotShownIfCscNotPinned) { … }
TEST_F(ExpsRegistrationSuccessObserverTest, IPHNotShownForBlockListedUrls) { … }
TEST_F(ExpsRegistrationSuccessObserverTest,
ExpsRegistrationSuccessUpdatesThePref) { … }
TEST_F(ExpsRegistrationSuccessObserverTest,
RandomUrlDoesntUpdateExpsRegistrationPref) { … }
TEST_F(ExpsRegistrationSuccessObserverTest, MatchURL) { … }
}