chromium/chrome/browser/web_applications/commands/update_protocol_handler_approval_command_browsertest.cc

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

#include "base/containers/contains.h"
#include "base/files/file_util.h"
#include "base/test/test_future.h"
#include "build/build_config.h"
#include "build/chromeos_buildflags.h"
#include "chrome/browser/ui/web_applications/web_app_browsertest_base.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/test/web_app_test_utils.h"
#include "chrome/browser/web_applications/web_app_command_scheduler.h"
#include "chrome/browser/web_applications/web_app_provider.h"
#include "chrome/browser/web_applications/web_app_registrar.h"
#include "chrome/common/chrome_features.h"
#include "components/webapps/browser/installable/installable_metrics.h"
#include "content/public/test/browser_test.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "url/gurl.h"

#if BUILDFLAG(IS_MAC)
#include "chrome/browser/web_applications/os_integration/mac/app_shim_registry.h"
#endif

namespace web_app {

enum class ApiApprovalState;

namespace {
const char16_t kAppName[] =;

// A few tests have Windows specific assertions because Windows is the only
// OS where protocols are registered on the OS differently compared to
// other OSes where protocols are bundled into the shortcut
// registration/update/unregistration flow.
class UpdateProtocolHandlerApprovalCommandTest : public WebAppBrowserTestBase {};

IN_PROC_BROWSER_TEST_F(UpdateProtocolHandlerApprovalCommandTest, Install) {}

IN_PROC_BROWSER_TEST_F(UpdateProtocolHandlerApprovalCommandTest,
                       ProtocolHandlersRegisteredAndAllowed) {}

IN_PROC_BROWSER_TEST_F(UpdateProtocolHandlerApprovalCommandTest,
                       ProtocolHandlersAllowedBackToBack) {}

IN_PROC_BROWSER_TEST_F(UpdateProtocolHandlerApprovalCommandTest,
                       ProtocolHandlersDisallowed) {}

IN_PROC_BROWSER_TEST_F(UpdateProtocolHandlerApprovalCommandTest,
                       ProtocolHandlersDisallowedBackToBack) {}

IN_PROC_BROWSER_TEST_F(UpdateProtocolHandlerApprovalCommandTest,
                       ProtocolHandlersAllowedThenDisallowed) {}

IN_PROC_BROWSER_TEST_F(UpdateProtocolHandlerApprovalCommandTest,
                       ProtocolHandlersDisallowedThenAllowed) {}

IN_PROC_BROWSER_TEST_F(UpdateProtocolHandlerApprovalCommandTest,
                       ProtocolHandlersDisallowedThenAsked) {}

IN_PROC_BROWSER_TEST_F(UpdateProtocolHandlerApprovalCommandTest,
                       ProtocolHandlersAllowedThenAsked) {}

}  // namespace
}  // namespace web_app