chromium/chrome/browser/ui/web_applications/web_app_browsertest_base.cc

// Copyright 2019 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "chrome/browser/ui/web_applications/web_app_browsertest_base.h"

#include <string>
#include <vector>

#include "base/strings/utf_string_conversions.h"
#include "base/test/bind.h"
#include "base/time/time.h"
#include "build/chromeos_buildflags.h"
#include "chrome/browser/apps/app_service/app_launch_params.h"
#include "chrome/browser/apps/app_service/app_service_proxy.h"
#include "chrome/browser/apps/app_service/app_service_proxy_factory.h"
#include "chrome/browser/apps/app_service/browser_app_launcher.h"
#include "chrome/browser/banners/test_app_banner_manager_desktop.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/profiles/profile_manager.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "chrome/browser/ui/web_applications/test/web_app_browsertest_util.h"
#include "chrome/browser/web_applications/mojom/user_display_mode.mojom.h"
#include "chrome/browser/web_applications/os_integration/os_integration_manager.h"
#include "chrome/browser/web_applications/os_integration/os_integration_test_override.h"
#include "chrome/browser/web_applications/test/debug_info_printer.h"
#include "chrome/browser/web_applications/test/os_integration_test_override_impl.h"
#include "chrome/browser/web_applications/test/web_app_install_test_utils.h"
#include "chrome/browser/web_applications/web_app_callback_app_identity.h"
#include "chrome/browser/web_applications/web_app_install_info.h"
#include "chrome/browser/web_applications/web_app_provider.h"
#include "chrome/browser/web_applications/web_app_ui_manager.h"
#include "chrome/browser/web_applications/web_app_utils.h"
#include "chrome/common/chrome_switches.h"
#include "chrome/test/base/ui_test_utils.h"
#include "components/keyed_service/content/browser_context_dependency_manager.h"
#include "components/services/app_service/public/cpp/app_launch_util.h"
#include "content/public/browser/navigation_controller.h"
#include "content/public/browser/navigation_entry.h"
#include "content/public/browser/render_frame_host.h"
#include "content/public/browser/web_contents.h"
#include "content/public/common/page_type.h"
#include "content/public/test/browser_test_utils.h"
#include "net/dns/mock_host_resolver.h"
#include "testing/gtest/include/gtest/gtest.h"

#if BUILDFLAG(IS_CHROMEOS_ASH)
#include "ash/constants/ash_features.h"
#include "base/containers/extend.h"
#include "chrome/common/chrome_features.h"
#include "chromeos/ash/components/standalone_browser/feature_refs.h"
#endif

#if BUILDFLAG(IS_CHROMEOS_LACROS)
#include "chromeos/startup/browser_params_proxy.h"
#endif

namespace web_app {

WebAppBrowserTestBase::WebAppBrowserTestBase()
    :{}

WebAppBrowserTestBase::WebAppBrowserTestBase(
    const std::vector<base::test::FeatureRef>& enabled_features,
    const std::vector<base::test::FeatureRef>& disabled_features)
    // TODO(crbug.com/40874949): Fix the manifest update process by ensuring
    // during test installs, an app is installed from the manifest so that the
    // identity update dialog is not triggered after navigation. This will
    // ensure removal of update_dialog_scope_.
    :{}

WebAppBrowserTestBase::~WebAppBrowserTestBase() = default;

WebAppProvider& WebAppBrowserTestBase::provider() {}

Profile* WebAppBrowserTestBase::profile() {}

webapps::AppId WebAppBrowserTestBase::InstallPWA(const GURL& start_url) {}

webapps::AppId WebAppBrowserTestBase::InstallWebApp(
    std::unique_ptr<WebAppInstallInfo> web_app_info) {}

void WebAppBrowserTestBase::UninstallWebApp(
    const webapps::AppId& app_id) {}

Browser* WebAppBrowserTestBase::LaunchWebAppBrowser(
    const webapps::AppId& app_id) {}

Browser* WebAppBrowserTestBase::LaunchWebAppBrowserAndWait(
    const webapps::AppId& app_id) {}

Browser*
WebAppBrowserTestBase::LaunchWebAppBrowserAndAwaitInstallabilityCheck(
    const webapps::AppId& app_id) {}

Browser* WebAppBrowserTestBase::LaunchBrowserForWebAppInTab(
    const webapps::AppId& app_id) {}

content::WebContents* WebAppBrowserTestBase::OpenWindow(
    content::WebContents* contents,
    const GURL& url) {}

bool WebAppBrowserTestBase::NavigateInRenderer(
    content::WebContents* contents,
    const GURL& url) {}

// static
bool WebAppBrowserTestBase::NavigateAndAwaitInstallabilityCheck(
    Browser* browser,
    const GURL& url) {}

Browser*
WebAppBrowserTestBase::NavigateInNewWindowAndAwaitInstallabilityCheck(
    const GURL& url) {}

std::optional<webapps::AppId>
WebAppBrowserTestBase::FindAppWithUrlInScope(const GURL& url) {}

Browser* WebAppBrowserTestBase::OpenPopupAndWait(
    Browser* browser,
    const GURL& url,
    const gfx::Size& popup_size) {}

OsIntegrationTestOverrideImpl&
WebAppBrowserTestBase::os_integration_override() {}

content::WebContents* WebAppBrowserTestBase::OpenApplication(
    const webapps::AppId& app_id) {}

GURL WebAppBrowserTestBase::GetInstallableAppURL() {}

// static
const char* WebAppBrowserTestBase::GetInstallableAppName() {}

void WebAppBrowserTestBase::SetUp() {}

void WebAppBrowserTestBase::TearDown() {}

void WebAppBrowserTestBase::SetUpInProcessBrowserTestFixture() {}

void WebAppBrowserTestBase::TearDownInProcessBrowserTestFixture() {}

void WebAppBrowserTestBase::TearDownOnMainThread() {}

void WebAppBrowserTestBase::SetUpCommandLine(
    base::CommandLine* command_line) {}

void WebAppBrowserTestBase::SetUpOnMainThread() {}

}  // namespace web_app