| # Copyright 2018 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//build/config/chromeos/ui_mode.gni") |
| import("//chrome/browser/buildflags.gni") |
| import("//mojo/public/tools/bindings/mojom.gni") |
| |
| source_set("web_applications") { |
| sources = [ |
| "app_registrar_observer.h", |
| "callback_utils.h", |
| "commands/callback_command.cc", |
| "commands/callback_command.h", |
| "commands/clear_browsing_data_command.cc", |
| "commands/clear_browsing_data_command.h", |
| "commands/externally_managed_install_command.cc", |
| "commands/externally_managed_install_command.h", |
| "commands/fetch_installability_for_chrome_management.cc", |
| "commands/fetch_installability_for_chrome_management.h", |
| "commands/fetch_manifest_and_install_command.cc", |
| "commands/fetch_manifest_and_install_command.h", |
| "commands/install_app_locally_command.cc", |
| "commands/install_app_locally_command.h", |
| "commands/install_from_info_command.cc", |
| "commands/install_from_info_command.h", |
| "commands/install_from_sync_command.cc", |
| "commands/install_from_sync_command.h", |
| "commands/install_placeholder_command.cc", |
| "commands/install_placeholder_command.h", |
| "commands/install_preloaded_verified_app_command.cc", |
| "commands/install_preloaded_verified_app_command.h", |
| "commands/manifest_update_check_command.cc", |
| "commands/manifest_update_check_command.h", |
| "commands/manifest_update_finalize_command.cc", |
| "commands/manifest_update_finalize_command.h", |
| "commands/navigate_and_trigger_install_dialog_command.cc", |
| "commands/navigate_and_trigger_install_dialog_command.h", |
| "commands/os_integration_synchronize_command.cc", |
| "commands/os_integration_synchronize_command.h", |
| "commands/run_on_os_login_command.cc", |
| "commands/run_on_os_login_command.h", |
| "commands/sub_app_install_command.cc", |
| "commands/sub_app_install_command.h", |
| "commands/update_file_handler_command.cc", |
| "commands/update_file_handler_command.h", |
| "commands/update_protocol_handler_approval_command.cc", |
| "commands/update_protocol_handler_approval_command.h", |
| "commands/web_app_command.cc", |
| "commands/web_app_command.h", |
| "commands/web_app_uninstall_command.cc", |
| "commands/web_app_uninstall_command.h", |
| "daily_metrics_helper.cc", |
| "daily_metrics_helper.h", |
| "extension_status_utils.h", |
| "external_install_options.cc", |
| "external_install_options.h", |
| "externally_installed_prefs_migration_metrics.cc", |
| "externally_installed_prefs_migration_metrics.h", |
| "externally_installed_web_app_prefs.cc", |
| "externally_installed_web_app_prefs.h", |
| "externally_managed_app_install_task.cc", |
| "externally_managed_app_install_task.h", |
| "externally_managed_app_manager.cc", |
| "externally_managed_app_manager.h", |
| "externally_managed_app_registration_task.cc", |
| "externally_managed_app_registration_task.h", |
| "file_utils_wrapper.cc", |
| "file_utils_wrapper.h", |
| "install_bounce_metric.cc", |
| "install_bounce_metric.h", |
| "isolated_web_apps/error/uma_logging.cc", |
| "isolated_web_apps/error/uma_logging.h", |
| "isolated_web_apps/get_isolated_web_app_browsing_data_command.cc", |
| "isolated_web_apps/get_isolated_web_app_browsing_data_command.h", |
| "isolated_web_apps/install_isolated_web_app_command.cc", |
| "isolated_web_apps/install_isolated_web_app_command.h", |
| "isolated_web_apps/install_isolated_web_app_from_command_line.cc", |
| "isolated_web_apps/install_isolated_web_app_from_command_line.h", |
| "isolated_web_apps/isolated_web_app_dev_mode.cc", |
| "isolated_web_apps/isolated_web_app_dev_mode.h", |
| "isolated_web_apps/isolated_web_app_error_page.cc", |
| "isolated_web_apps/isolated_web_app_error_page.h", |
| "isolated_web_apps/isolated_web_app_location.cc", |
| "isolated_web_apps/isolated_web_app_location.h", |
| "isolated_web_apps/isolated_web_app_reader_registry.cc", |
| "isolated_web_apps/isolated_web_app_reader_registry.h", |
| "isolated_web_apps/isolated_web_app_reader_registry_factory.cc", |
| "isolated_web_apps/isolated_web_app_reader_registry_factory.h", |
| "isolated_web_apps/isolated_web_app_response_reader.cc", |
| "isolated_web_apps/isolated_web_app_response_reader.h", |
| "isolated_web_apps/isolated_web_app_response_reader_factory.cc", |
| "isolated_web_apps/isolated_web_app_response_reader_factory.h", |
| "isolated_web_apps/isolated_web_app_trust_checker.cc", |
| "isolated_web_apps/isolated_web_app_trust_checker.h", |
| "isolated_web_apps/isolated_web_app_url_info.cc", |
| "isolated_web_apps/isolated_web_app_url_info.h", |
| "isolated_web_apps/isolated_web_app_url_loader_factory.cc", |
| "isolated_web_apps/isolated_web_app_url_loader_factory.h", |
| "isolated_web_apps/isolated_web_app_validator.cc", |
| "isolated_web_apps/isolated_web_app_validator.h", |
| "isolated_web_apps/pending_install_info.cc", |
| "isolated_web_apps/pending_install_info.h", |
| "isolated_web_apps/signed_web_bundle_reader.cc", |
| "isolated_web_apps/signed_web_bundle_reader.h", |
| "locks/all_apps_lock.cc", |
| "locks/all_apps_lock.h", |
| "locks/app_lock.cc", |
| "locks/app_lock.h", |
| "locks/lock.cc", |
| "locks/lock.h", |
| "locks/noop_lock.cc", |
| "locks/noop_lock.h", |
| "locks/shared_web_contents_lock.cc", |
| "locks/shared_web_contents_lock.h", |
| "locks/shared_web_contents_with_app_lock.cc", |
| "locks/shared_web_contents_with_app_lock.h", |
| "locks/web_app_lock_manager.cc", |
| "locks/web_app_lock_manager.h", |
| "locks/with_app_resources.cc", |
| "locks/with_app_resources.h", |
| "locks/with_shared_web_contents_resources.cc", |
| "locks/with_shared_web_contents_resources.h", |
| "manifest_update_manager.cc", |
| "manifest_update_manager.h", |
| "manifest_update_utils.cc", |
| "manifest_update_utils.h", |
| "os_integration/file_handling_sub_manager.cc", |
| "os_integration/file_handling_sub_manager.h", |
| "os_integration/os_integration_manager.cc", |
| "os_integration/os_integration_manager.h", |
| "os_integration/os_integration_sub_manager.h", |
| "os_integration/os_integration_test_override.cc", |
| "os_integration/os_integration_test_override.h", |
| "os_integration/protocol_handling_sub_manager.cc", |
| "os_integration/protocol_handling_sub_manager.h", |
| "os_integration/run_on_os_login_sub_manager.cc", |
| "os_integration/run_on_os_login_sub_manager.h", |
| "os_integration/shortcut_menu_handling_sub_manager.cc", |
| "os_integration/shortcut_menu_handling_sub_manager.h", |
| "os_integration/shortcut_sub_manager.cc", |
| "os_integration/shortcut_sub_manager.h", |
| "os_integration/uninstallation_via_os_settings_sub_manager.cc", |
| "os_integration/uninstallation_via_os_settings_sub_manager.h", |
| "os_integration/url_handler_manager.cc", |
| "os_integration/url_handler_manager.h", |
| "os_integration/web_app_file_handler_manager.cc", |
| "os_integration/web_app_file_handler_manager.h", |
| "os_integration/web_app_file_handler_registration.cc", |
| "os_integration/web_app_file_handler_registration.h", |
| "os_integration/web_app_protocol_handler_manager.cc", |
| "os_integration/web_app_protocol_handler_manager.h", |
| "os_integration/web_app_protocol_handler_registration.cc", |
| "os_integration/web_app_protocol_handler_registration.h", |
| "os_integration/web_app_run_on_os_login.cc", |
| "os_integration/web_app_run_on_os_login.h", |
| "os_integration/web_app_shortcut.cc", |
| "os_integration/web_app_shortcut.h", |
| "os_integration/web_app_shortcut_manager.cc", |
| "os_integration/web_app_shortcut_manager.h", |
| "os_integration/web_app_shortcuts_menu.cc", |
| "os_integration/web_app_shortcuts_menu.h", |
| "os_integration/web_app_uninstallation_via_os_settings_registration.cc", |
| "os_integration/web_app_uninstallation_via_os_settings_registration.h", |
| "policy/pre_redirection_url_observer.cc", |
| "policy/pre_redirection_url_observer.h", |
| "policy/web_app_policy_constants.cc", |
| "policy/web_app_policy_constants.h", |
| "policy/web_app_policy_manager.cc", |
| "policy/web_app_policy_manager.h", |
| "preinstalled_app_install_features.cc", |
| "preinstalled_app_install_features.h", |
| "preinstalled_web_app_config_utils.cc", |
| "preinstalled_web_app_config_utils.h", |
| "preinstalled_web_app_manager.cc", |
| "preinstalled_web_app_manager.h", |
| "preinstalled_web_app_utils.cc", |
| "preinstalled_web_app_utils.h", |
| "preinstalled_web_apps/preinstalled_web_app_definition_utils.cc", |
| "preinstalled_web_apps/preinstalled_web_app_definition_utils.h", |
| "preinstalled_web_apps/preinstalled_web_apps.cc", |
| "preinstalled_web_apps/preinstalled_web_apps.h", |
| "scope_extension_info.cc", |
| "scope_extension_info.h", |
| "user_display_mode.cc", |
| "user_display_mode.h", |
| "user_uninstalled_preinstalled_web_app_prefs.cc", |
| "user_uninstalled_preinstalled_web_app_prefs.h", |
| "web_app.cc", |
| "web_app.h", |
| "web_app_audio_focus_id_map.cc", |
| "web_app_audio_focus_id_map.h", |
| "web_app_callback_app_identity.h", |
| "web_app_chromeos_data.cc", |
| "web_app_chromeos_data.h", |
| "web_app_command_manager.cc", |
| "web_app_command_manager.h", |
| "web_app_command_scheduler.cc", |
| "web_app_command_scheduler.h", |
| "web_app_constants.cc", |
| "web_app_constants.h", |
| "web_app_database.cc", |
| "web_app_database.h", |
| "web_app_database_factory.cc", |
| "web_app_database_factory.h", |
| "web_app_helpers.cc", |
| "web_app_helpers.h", |
| "web_app_icon_generator.cc", |
| "web_app_icon_generator.h", |
| "web_app_icon_manager.cc", |
| "web_app_icon_manager.h", |
| "web_app_id.h", |
| "web_app_id_constants.h", |
| "web_app_install_finalizer.cc", |
| "web_app_install_finalizer.h", |
| "web_app_install_info.cc", |
| "web_app_install_info.h", |
| "web_app_install_manager.cc", |
| "web_app_install_manager.h", |
| "web_app_install_manager_observer.h", |
| "web_app_install_params.cc", |
| "web_app_install_params.h", |
| "web_app_install_utils.cc", |
| "web_app_install_utils.h", |
| "web_app_internals_utils.cc", |
| "web_app_internals_utils.h", |
| "web_app_launch_params.cc", |
| "web_app_launch_params.h", |
| "web_app_launch_queue.cc", |
| "web_app_launch_queue.h", |
| "web_app_logging.cc", |
| "web_app_logging.h", |
| "web_app_origin_association_manager.cc", |
| "web_app_origin_association_manager.h", |
| "web_app_origin_association_task.cc", |
| "web_app_origin_association_task.h", |
| "web_app_prefs_utils.cc", |
| "web_app_prefs_utils.h", |
| "web_app_proto_utils.cc", |
| "web_app_proto_utils.h", |
| "web_app_provider.cc", |
| "web_app_provider.h", |
| "web_app_provider_factory.cc", |
| "web_app_provider_factory.h", |
| "web_app_registrar.cc", |
| "web_app_registrar.h", |
| "web_app_registry_update.cc", |
| "web_app_registry_update.h", |
| "web_app_sources.h", |
| "web_app_sync_bridge.cc", |
| "web_app_sync_bridge.h", |
| "web_app_tab_helper.cc", |
| "web_app_tab_helper.h", |
| "web_app_translation_manager.cc", |
| "web_app_translation_manager.h", |
| "web_app_ui_manager.cc", |
| "web_app_ui_manager.h", |
| "web_app_uninstall_and_replace_job.h", |
| "web_app_uninstall_job.cc", |
| "web_app_uninstall_job.h", |
| "web_app_utils.cc", |
| "web_app_utils.h", |
| "web_contents/web_app_data_retriever.cc", |
| "web_contents/web_app_data_retriever.h", |
| "web_contents/web_app_icon_downloader.cc", |
| "web_contents/web_app_icon_downloader.h", |
| "web_contents/web_app_url_loader.cc", |
| "web_contents/web_app_url_loader.h", |
| ] |
| |
| if (is_chromeos) { |
| sources += [ |
| "chromeos_web_app_experiments.cc", |
| "chromeos_web_app_experiments.h", |
| "isolated_web_apps/policy/isolated_web_app_external_install_options.cc", |
| "isolated_web_apps/policy/isolated_web_app_external_install_options.h", |
| "isolated_web_apps/policy/isolated_web_app_policy_constants.cc", |
| "isolated_web_apps/policy/isolated_web_app_policy_constants.h", |
| "isolated_web_apps/policy/isolated_web_app_policy_manager.cc", |
| "isolated_web_apps/policy/isolated_web_app_policy_manager.h", |
| "os_integration/web_app_run_on_os_login_chromeos.cc", |
| "os_integration/web_app_shortcut_chromeos.cc", |
| "preinstalled_web_app_window_experiment.cc", |
| "preinstalled_web_app_window_experiment.h", |
| "preinstalled_web_app_window_experiment_utils.cc", |
| "preinstalled_web_app_window_experiment_utils.h", |
| "web_app_run_on_os_login_manager.cc", |
| "web_app_run_on_os_login_manager.h", |
| ] |
| } |
| |
| if (is_chromeos_ash) { |
| sources += [ |
| "web_app_system_web_app_delegate_map_utils.cc", |
| "web_app_system_web_app_delegate_map_utils.h", |
| ] |
| } |
| |
| if (is_fuchsia) { |
| sources += [ "os_integration/web_app_stubs.cc" ] |
| } |
| |
| if (is_linux) { |
| # Desktop linux, doesn't count ChromeOS. |
| sources += [ |
| "os_integration/web_app_file_handler_registration_linux.cc", |
| "os_integration/web_app_run_on_os_login_linux.cc", |
| "os_integration/web_app_shortcut_linux.cc", |
| "os_integration/web_app_shortcut_linux.h", |
| ] |
| } |
| |
| if (is_mac) { |
| sources += [ |
| "app_shim_registry_mac.cc", |
| "app_shim_registry_mac.h", |
| "os_integration/icns_encoder.cc", |
| "os_integration/icns_encoder.h", |
| "os_integration/web_app_file_handler_registration_mac.cc", |
| "os_integration/web_app_protocol_handler_registration_mac.cc", |
| "os_integration/web_app_run_on_os_login_mac.mm", |
| "os_integration/web_app_shortcut_mac.h", |
| "os_integration/web_app_shortcut_mac.mm", |
| ] |
| } |
| |
| if (is_win) { |
| sources += [ |
| "os_integration/web_app_file_handler_registration_win.cc", |
| "os_integration/web_app_handler_registration_utils_win.cc", |
| "os_integration/web_app_handler_registration_utils_win.h", |
| "os_integration/web_app_protocol_handler_registration_win.cc", |
| "os_integration/web_app_run_on_os_login_win.cc", |
| "os_integration/web_app_shortcut_win.cc", |
| "os_integration/web_app_shortcut_win.h", |
| "os_integration/web_app_shortcuts_menu_win.cc", |
| "os_integration/web_app_shortcuts_menu_win.h", |
| "os_integration/web_app_uninstallation_via_os_settings_registration_win.cc", |
| ] |
| } |
| |
| if (!is_android) { |
| sources += [ |
| "policy/web_app_settings_policy_handler.cc", |
| "policy/web_app_settings_policy_handler.h", |
| ] |
| } |
| |
| # Enable the "exit_time_destructors" warning here to avoid accidentally |
| # adding exit time destructors and because the flag is not enabled by default. |
| # TODO(http://crbug.com/101600): Remove once exit_time_destructors is enabled |
| # by default. |
| configs += [ "//build/config/compiler:wexit_time_destructors" ] |
| |
| assert_no_deps = [ |
| # TODO: Exclude "//extensions" as well. |
| "//chrome/browser/apps/app_service", |
| "//chrome/browser/ash/system_web_apps", |
| "//chrome/browser/extensions", |
| ] |
| |
| deps = [ |
| "//base", |
| "//build:branding_buildflags", |
| "//build:chromeos_buildflags", |
| "//chrome/app/resources:platform_locale_settings", |
| "//chrome/app/theme:chrome_unscaled_resources", |
| "//chrome/browser:browser_process", |
| "//chrome/browser/apps:user_type_filter", |
| "//chrome/browser/apps/app_service:constants", |
| "//chrome/browser/favicon", |
| "//chrome/browser/profiles:profile", |
| "//chrome/common", |
| "//chrome/common:non_code_constants", |
| "//components/browsing_data/content", |
| "//components/content_settings/core/browser", |
| "//components/custom_handlers", |
| "//components/device_event_log", |
| "//components/keep_alive_registry:keep_alive_registry", |
| "//components/keyed_service/content", |
| "//components/password_manager/content/common", |
| "//components/performance_manager", |
| "//components/permissions:permissions", |
| "//components/policy/core/browser", |
| "//components/pref_registry", |
| "//components/resources:components_resources_grit", |
| "//components/services/app_service/public/cpp:app_file_handling", |
| "//components/services/app_service/public/cpp:app_types", |
| "//components/services/app_service/public/cpp:app_update", |
| "//components/services/app_service/public/cpp:app_url_handling", |
| "//components/services/app_service/public/cpp:preferred_apps", |
| "//components/services/app_service/public/cpp:protocol_handling", |
| "//components/services/app_service/public/cpp:run_on_os_login", |
| "//components/services/app_service/public/cpp:types", |
| "//components/services/storage:lock_manager", |
| "//components/site_engagement/content", |
| "//components/site_engagement/core/mojom:mojo_bindings", |
| "//components/sync", |
| "//components/user_manager", |
| "//components/web_package", |
| "//components/webapps/browser", |
| "//components/webapps/common:common", |
| "//components/webapps/common:mojo_bindings", |
| "//components/webapps/services/web_app_origin_association:lib", |
| "//components/webapps/services/web_app_origin_association:service", |
| "//content/browser/background_fetch:background_fetch_proto", |
| "//content/public/browser", |
| "//mojo/core/embedder", |
| "//mojo/core/embedder:features", |
| "//mojo/public/cpp/bindings", |
| "//net", |
| "//services/data_decoder/public/cpp", |
| "//services/metrics/public/cpp:ukm_builders", |
| "//services/network/public/cpp", |
| "//services/preferences/public/cpp", |
| "//skia", |
| "//third_party/blink/public/common", |
| "//ui/base", |
| "//ui/base/idle", |
| "//ui/events/devices:devices", |
| "//url", |
| ] |
| |
| # TODO(crbug.com/1225132): Clean up this legacy crx dependency. |
| deps += [ "//components/crx_file" ] |
| |
| if (is_chrome_branded) { |
| sources += [ |
| "preinstalled_web_apps/gmail.cc", |
| "preinstalled_web_apps/gmail.h", |
| "preinstalled_web_apps/google_docs.cc", |
| "preinstalled_web_apps/google_docs.h", |
| "preinstalled_web_apps/google_drive.cc", |
| "preinstalled_web_apps/google_drive.h", |
| "preinstalled_web_apps/google_sheets.cc", |
| "preinstalled_web_apps/google_sheets.h", |
| "preinstalled_web_apps/google_slides.cc", |
| "preinstalled_web_apps/google_slides.h", |
| "preinstalled_web_apps/youtube.cc", |
| "preinstalled_web_apps/youtube.h", |
| ] |
| |
| if (is_chromeos) { |
| sources += [ |
| "preinstalled_web_apps/calculator.cc", |
| "preinstalled_web_apps/calculator.h", |
| "preinstalled_web_apps/google_calendar.cc", |
| "preinstalled_web_apps/google_calendar.h", |
| "preinstalled_web_apps/google_chat.cc", |
| "preinstalled_web_apps/google_chat.h", |
| "preinstalled_web_apps/google_meet.cc", |
| "preinstalled_web_apps/google_meet.h", |
| "preinstalled_web_apps/messages_dogfood.cc", |
| "preinstalled_web_apps/messages_dogfood.h", |
| ] |
| } |
| |
| deps += [ "//chrome/browser/resources:preinstalled_web_apps_resources" ] |
| } |
| |
| if (is_win) { |
| deps += [ |
| "//chrome/browser/web_applications/chrome_pwa_launcher:util", |
| "//components/custom_handlers", |
| ] |
| } |
| |
| if (is_chromeos_ash) { |
| deps += [ |
| "//ash/components/arc:arc_base", |
| "//ash/constants", |
| "//ash/public/cpp", |
| "//ash/webui/system_apps/public:system_web_app_type", |
| "//chrome/browser/ash/crosapi:browser_util", |
| "//chrome/browser/ash/system_web_apps/types", |
| ] |
| } |
| |
| if (is_chromeos_lacros) { |
| deps += [ |
| "//chromeos/lacros", |
| "//chromeos/startup", |
| ] |
| } |
| |
| if (is_chromeos) { |
| deps += [ "//chromeos/constants:constants" ] |
| } |
| |
| public_deps = [ |
| "//chrome/browser/web_applications/mojom:mojom_web_apps_enum", |
| "//chrome/browser/web_applications/proto", |
| "//components/permissions:permissions", |
| "//components/services/app_service/public/cpp:app_share_target", |
| "//components/services/app_service/public/cpp:app_url_handling", |
| ] |
| } |
| |
| # This test_support library doesn't use extensions. It must not depend on |
| # //chrome/test:test_support{_ui} as it is depended upon by those targets. |
| source_set("web_applications_test_support") { |
| testonly = true |
| |
| sources = [ |
| "test/app_registry_cache_waiter.cc", |
| "test/app_registry_cache_waiter.h", |
| "test/external_app_registration_waiter.cc", |
| "test/external_app_registration_waiter.h", |
| "test/fake_data_retriever.cc", |
| "test/fake_data_retriever.h", |
| "test/fake_externally_managed_app_manager.cc", |
| "test/fake_externally_managed_app_manager.h", |
| "test/fake_install_finalizer.cc", |
| "test/fake_install_finalizer.h", |
| "test/fake_os_integration_manager.cc", |
| "test/fake_os_integration_manager.h", |
| "test/fake_url_handler_manager.cc", |
| "test/fake_url_handler_manager.h", |
| "test/fake_web_app_database_factory.cc", |
| "test/fake_web_app_database_factory.h", |
| "test/fake_web_app_file_handler_manager.cc", |
| "test/fake_web_app_file_handler_manager.h", |
| "test/fake_web_app_origin_association_manager.cc", |
| "test/fake_web_app_origin_association_manager.h", |
| "test/fake_web_app_provider.cc", |
| "test/fake_web_app_provider.h", |
| "test/fake_web_app_ui_manager.cc", |
| "test/fake_web_app_ui_manager.h", |
| "test/fake_web_contents_manager.cc", |
| "test/fake_web_contents_manager.h", |
| "test/mock_data_retriever.cc", |
| "test/mock_data_retriever.h", |
| "test/mock_file_utils_wrapper.cc", |
| "test/mock_file_utils_wrapper.h", |
| "test/mock_os_integration_manager.cc", |
| "test/mock_os_integration_manager.h", |
| "test/os_integration_test_override_impl.cc", |
| "test/os_integration_test_override_impl.h", |
| "test/service_worker_registration_waiter.cc", |
| "test/service_worker_registration_waiter.h", |
| "test/signed_web_bundle_utils.cc", |
| "test/signed_web_bundle_utils.h", |
| "test/test_file_utils.cc", |
| "test/test_file_utils.h", |
| "test/test_web_app_url_loader.cc", |
| "test/test_web_app_url_loader.h", |
| "test/web_app_icon_test_utils.cc", |
| "test/web_app_icon_test_utils.h", |
| "test/web_app_icon_waiter.cc", |
| "test/web_app_icon_waiter.h", |
| "test/web_app_install_test_utils.cc", |
| "test/web_app_install_test_utils.h", |
| "test/web_app_sync_test_utils.cc", |
| "test/web_app_sync_test_utils.h", |
| "test/web_app_test_observers.cc", |
| "test/web_app_test_observers.h", |
| "test/web_app_test_utils.cc", |
| "test/web_app_test_utils.h", |
| "test/with_crosapi_param.cc", |
| "test/with_crosapi_param.h", |
| ] |
| |
| deps = [ |
| ":web_applications", |
| "//base/test:test_support", |
| "//chrome/app:command_ids", |
| "//chrome/app/theme:chrome_unscaled_resources_grit", |
| "//chrome/browser", |
| "//chrome/browser/apps/app_service", |
| "//chrome/browser/profiles:profile", |
| "//chrome/browser/ui", |
| "//components/crx_file:crx_file", |
| "//components/keyed_service/content", |
| "//components/services/app_service/public/cpp:app_types", |
| "//components/services/app_service/public/cpp:app_update", |
| "//components/services/app_service/public/cpp:app_url_handling", |
| "//components/services/app_service/public/cpp:intents", |
| "//components/services/app_service/public/cpp:protocol_handling", |
| "//components/services/app_service/public/cpp:types", |
| "//components/sync:test_support", |
| "//components/sync_preferences:test_support", |
| "//components/web_package/test_support", |
| "//components/webapps/browser", |
| "//content/test:test_support", |
| "//services/data_decoder/public/cpp:test_support", |
| "//testing/gtest", |
| "//ui/webui", |
| ] |
| |
| if (is_chromeos_ash) { |
| deps += [ |
| "//ash/constants", |
| "//chrome/browser/ash/system_web_apps", |
| "//chrome/browser/ash/system_web_apps/types", |
| ] |
| } |
| } |
| |
| source_set("web_applications_unit_tests") { |
| testonly = true |
| |
| sources = [ |
| "commands/clear_browsing_data_command_unittest.cc", |
| "commands/externally_managed_install_command_unittest.cc", |
| "commands/fetch_installability_for_chrome_management_unittest.cc", |
| "commands/fetch_manifest_and_install_command_unittest.cc", |
| "commands/install_app_locally_command_unittest.cc", |
| "commands/install_from_sync_command_unittest.cc", |
| "commands/install_placeholder_command_unittest.cc", |
| "commands/manifest_update_check_command_unittest.cc", |
| "commands/manifest_update_finalize_command_unittest.cc", |
| "commands/os_integration_synchronize_command_unittest.cc", |
| "commands/run_on_os_login_command_unittest.cc", |
| "commands/sub_app_install_command_unittest.cc", |
| "commands/update_file_handler_command_unittest.cc", |
| "commands/web_app_uninstall_command_unittest.cc", |
| "daily_metrics_helper_unittest.cc", |
| "external_install_options_unittest.cc", |
| "externally_managed_app_manager_impl_unittest.cc", |
| "externally_managed_app_manager_unittest.cc", |
| "isolated_web_apps/error/uma_logging_unittest.cc", |
| "isolated_web_apps/install_isolated_web_app_command_unittest.cc", |
| "isolated_web_apps/install_isolated_web_app_from_command_line_unittest.cc", |
| "isolated_web_apps/isolated_web_app_dev_mode_unittest.cc", |
| "isolated_web_apps/isolated_web_app_reader_registry_factory_unittest.cc", |
| "isolated_web_apps/isolated_web_app_reader_registry_unittest.cc", |
| "isolated_web_apps/isolated_web_app_response_reader_factory_unittest.cc", |
| "isolated_web_apps/isolated_web_app_response_reader_unittest.cc", |
| "isolated_web_apps/isolated_web_app_trust_checker_unittest.cc", |
| "isolated_web_apps/isolated_web_app_url_info_unittest.cc", |
| "isolated_web_apps/isolated_web_app_url_loader_factory_unittest.cc", |
| "isolated_web_apps/isolated_web_app_validator_unittest.cc", |
| "isolated_web_apps/pending_install_info_unittest.cc", |
| "isolated_web_apps/signed_web_bundle_reader_unittest.cc", |
| "locks/web_app_lock_manager_unittest.cc", |
| "os_integration/file_handling_sub_manager_unittest.cc", |
| "os_integration/os_integration_manager_unittest.cc", |
| "os_integration/protocol_handling_sub_manager_unittest.cc", |
| "os_integration/run_on_os_login_sub_manager_unittest.cc", |
| "os_integration/shortcut_menu_handling_sub_manager_unittest.cc", |
| "os_integration/shortcut_sub_manager_unittest.cc", |
| "os_integration/uninstallation_via_os_settings_sub_manager_unittest.cc", |
| "os_integration/web_app_file_handler_manager_unittest.cc", |
| "os_integration/web_app_protocol_handler_manager_unittest.cc", |
| "os_integration/web_app_shortcut_unittest.cc", |
| "policy/pre_redirection_url_observer_unittest.cc", |
| "policy/web_app_policy_manager_unittest.cc", |
| "preinstalled_web_app_manager_unittest.cc", |
| "preinstalled_web_app_utils_unittest.cc", |
| "preinstalled_web_apps/preinstalled_web_app_definition_utils_unittest.cc", |
| "test/web_app_test.cc", |
| "test/web_app_test.h", |
| "web_app_command_manager_unittest.cc", |
| "web_app_command_scheduler_unittest.cc", |
| "web_app_database_unittest.cc", |
| "web_app_helpers_unittest.cc", |
| "web_app_icon_generator_unittest.cc", |
| "web_app_icon_manager_unittest.cc", |
| "web_app_install_finalizer_unittest.cc", |
| "web_app_install_utils_unittest.cc", |
| "web_app_prefs_utils_unittest.cc", |
| "web_app_proto_utils_unittest.cc", |
| "web_app_registrar_unittest.cc", |
| "web_app_sync_bridge_unittest.cc", |
| "web_app_translation_manager_unittest.cc", |
| "web_app_ui_manager_unittest.cc", |
| "web_app_unittest.cc", |
| "web_app_utils_unittest.cc", |
| "web_contents/web_app_data_retriever_unittest.cc", |
| "web_contents/web_app_icon_downloader_unittest.cc", |
| "web_contents/web_app_url_loader_unittest.cc", |
| ] |
| |
| if (is_win) { |
| sources += [ |
| "os_integration/web_app_file_handler_registration_win_unittest.cc", |
| "os_integration/web_app_handler_registration_utils_win_unittest.cc", |
| "os_integration/web_app_protocol_handler_registration_win_unittest.cc", |
| "os_integration/web_app_run_on_os_login_win_unittest.cc", |
| "os_integration/web_app_shortcut_win_unittest.cc", |
| ] |
| } |
| |
| if (is_mac) { |
| sources += [ |
| "app_shim_registry_mac_unittest.cc", |
| "os_integration/icns_encoder_unittest.cc", |
| "os_integration/web_app_run_on_os_login_mac_unittest.mm", |
| "os_integration/web_app_shortcut_mac_unittest.mm", |
| "os_integration/web_app_shortcut_manager_mac_unittest.cc", |
| ] |
| } |
| |
| if (is_linux) { |
| # Desktop linux, doesn't count ChromeOS. |
| sources += [ |
| "os_integration/web_app_run_on_os_login_linux_unittest.cc", |
| "os_integration/web_app_shortcut_linux_unittest.cc", |
| ] |
| } |
| |
| if (!is_android && !is_chromeos) { |
| sources += [ "policy/web_app_settings_policy_handler_unittest.cc" ] |
| } |
| |
| if (is_chromeos) { |
| sources += [ |
| "isolated_web_apps/policy/isolated_web_app_exteral_install_options_unittest.cc", |
| "isolated_web_apps/policy/isolated_web_app_policy_manager_unittest.cc", |
| "os_integration/web_app_run_on_os_login_chromeos_unittest.cc", |
| "web_app_run_on_os_login_manager_unittest.cc", |
| ] |
| } |
| |
| deps = [ |
| ":web_applications", |
| ":web_applications_test_support", |
| "//base/test:test_support", |
| "//build:chromeos_buildflags", |
| "//chrome/app/theme:theme_resources", |
| "//chrome/browser", |
| "//chrome/browser:browser_process", |
| "//chrome/browser/apps/app_service", |
| "//chrome/browser/extensions:test_support", |
| "//chrome/browser/profiles:profile", |
| "//chrome/browser/web_applications/extensions:extensions", |
| "//chrome/common", |
| "//chrome/test:test_support", |
| "//components/services/app_service/public/cpp:app_url_handling", |
| "//components/services/app_service/public/cpp:protocol_handling", |
| "//components/web_package", |
| "//components/web_package/test_support", |
| "//components/webapps/browser", |
| "//components/webapps/browser:test_support", |
| "//components/webapps/common:mojo_bindings", |
| "//content/public/browser", |
| "//content/public/common", |
| "//content/test:test_support", |
| "//services/metrics/public/cpp:ukm_builders", |
| "//services/preferences/public/cpp", |
| "//skia", |
| "//testing/gmock", |
| "//testing/gtest", |
| "//ui/base/idle:idle", |
| "//ui/base/idle:test_support", |
| ] |
| |
| if (is_chromeos_ash) { |
| deps += [ |
| "//ash/components/arc:arc", |
| "//ash/components/arc:arc_test_support", |
| "//ash/components/arc/mojom", |
| "//ash/constants", |
| "//chrome/browser/ash", |
| "//chrome/browser/ash:test_support", |
| "//chrome/browser/ash/system_web_apps/test_support", |
| "//chrome/browser/ash/system_web_apps/types", |
| "//components/arc:arc_test_support", |
| ] |
| } |
| |
| if (is_chromeos_lacros) { |
| deps += [ "//chromeos/startup:startup" ] |
| } |
| |
| if (is_win) { |
| deps += [ |
| "//chrome/browser/web_applications/chrome_pwa_launcher:unit_tests", |
| "//chrome/browser/web_applications/chrome_pwa_launcher:util", |
| ] |
| } |
| |
| if (is_win || is_mac || is_linux) { |
| deps += [ "//components/services/app_service/public/cpp:app_url_handling" ] |
| } |
| } |
| |
| group("unit_tests") { |
| testonly = true |
| |
| deps = [ |
| ":web_applications_unit_tests", |
| "//chrome/browser/web_applications/adjustments:unit_tests", |
| "//chrome/browser/web_applications/app_service:unit_tests", |
| "//chrome/browser/web_applications/extensions:unit_tests", |
| ] |
| } |
| |
| source_set("web_applications_browser_tests") { |
| testonly = true |
| |
| sources = [ |
| "commands/externally_managed_install_command_browsertest.cc", |
| "commands/fetch_manifest_and_install_command_browsertest.cc", |
| "commands/install_from_info_command_browsertest.cc", |
| "commands/install_from_sync_command_browsertest.cc", |
| "commands/install_preloaded_verified_app_command_browsertest.cc", |
| "commands/navigate_and_trigger_install_dialog_command_browsertest.cc", |
| "commands/update_protocol_handler_approval_command_browsertest.cc", |
| "externally_installed_web_app_prefs_browsertest.cc", |
| "externally_managed_app_manager_browsertest.cc", |
| "isolated_web_apps/get_isolated_web_app_browsing_data_command_browsertest.cc", |
| "isolated_web_apps/install_isolated_web_app_from_command_line_browsertest.cc", |
| "isolated_web_apps/isolated_web_app_browsertest.cc", |
| "isolated_web_apps/isolated_web_app_error_page_browsertest.cc", |
| "isolated_web_apps/isolated_web_app_url_loader_factory_browsertest.cc", |
| "manifest_update_manager_browsertest.cc", |
| "policy/web_app_policy_manager_browsertest.cc", |
| "preinstalled_web_app_manager_browsertest.cc", |
| "preinstalled_web_apps_browsertest.cc", |
| "user_uninstalled_preinstalled_web_app_prefs_browsertest.cc", |
| "web_app_audio_focus_browsertest.cc", |
| "web_app_icon_manager_browsertest.cc", |
| "web_app_internals_browsertest.cc", |
| "web_app_origin_association_manager_browsertest.cc", |
| "web_app_pref_migration_browsertest.cc", |
| "web_contents/web_app_url_loader_browsertest.cc", |
| ] |
| |
| if (is_linux) { |
| sources += [ |
| "os_integration/web_app_file_handler_registration_linux_browsertest.cc", |
| ] |
| } |
| |
| if (is_chromeos_ash) { |
| sources += [ |
| "isolated_web_apps/policy/isolated_web_app_policy_manager_ash_browsertest.cc", |
| "web_app_run_on_os_login_manager_browsertest.cc", |
| ] |
| } |
| |
| defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ] |
| |
| deps = [ |
| ":web_applications", |
| ":web_applications_test_support", |
| "//base", |
| "//chrome/app:command_ids", |
| "//chrome/browser/apps/app_service", |
| "//chrome/browser/apps/app_service:test_support", |
| "//chrome/browser/profiles:profile", |
| "//chrome/test:test_support", |
| "//chrome/test:test_support_ui", |
| "//components/services/app_service/public/cpp:app_update", |
| "//components/services/app_service/public/cpp:protocol_handling", |
| "//components/site_engagement/content", |
| "//components/user_manager", |
| "//components/web_package", |
| "//components/web_package/test_support", |
| "//components/webapps/browser", |
| "//components/webapps/services/web_app_origin_association/test:test_support", |
| "//ui/events/devices:test_support", |
| "//url", |
| ] |
| |
| if (is_chromeos_ash) { |
| deps += [ |
| "//chrome/browser/ash:test_support", |
| "//chrome/browser/ash/system_web_apps/test_support", |
| "//chrome/browser/ash/system_web_apps/test_support:test_support_ui", |
| ] |
| } |
| |
| if (is_chromeos_lacros) { |
| deps += [ |
| "//chromeos/constants", |
| "//chromeos/startup", |
| ] |
| } |
| } |
| |
| group("browser_tests") { |
| testonly = true |
| |
| deps = [ |
| ":web_applications_browser_tests", |
| "adjustments:adjustments_browser_tests", |
| ] |
| } |
| |
| # On Lacros, these browser tests require Ash to be running. |
| source_set("app_service_browser_tests") { |
| testonly = true |
| |
| sources = [ "preinstalled_web_app_migration_browsertest.cc" ] |
| |
| if (is_chromeos) { |
| sources += [ "chromeos_web_app_experiments_browsertest.cc" ] |
| } |
| |
| defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ] |
| |
| deps = [ |
| ":web_applications", |
| ":web_applications_test_support", |
| "//base", |
| "//chrome/browser/apps/app_service", |
| "//chrome/test:test_support", |
| "//chrome/test:test_support_ui", |
| ] |
| |
| if (is_chromeos) { |
| deps += [ "//chromeos/constants:constants" ] |
| } |
| |
| if (is_chromeos_lacros) { |
| deps += [ |
| "//chromeos/lacros:lacros", |
| "//chromeos/startup", |
| ] |
| } |
| } |
| |
| source_set("interactive_ui_tests") { |
| testonly = true |
| |
| sources = [ |
| "isolated_web_apps/isolated_web_app_interactive_uitest.cc", |
| "web_app_notifications_interactive_uitest.cc", |
| ] |
| |
| defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ] |
| |
| deps = [ |
| ":web_applications", |
| ":web_applications_test_support", |
| "//chrome/app:command_ids", |
| "//chrome/test:test_support", |
| "//chrome/test:test_support_ui", |
| "//components/permissions:permissions", |
| "//components/webapps/browser", |
| "//ui/base/idle:idle", |
| "//ui/base/idle:test_support", |
| "//ui/events/devices:test_support", |
| ] |
| |
| if (is_chromeos) { |
| sources += [ "preinstalled_web_app_window_experiment_browsertest.cc" ] |
| |
| deps += [ |
| "//chrome/browser/apps/app_service", |
| "//chrome/browser/apps/app_service:test_support", |
| "//chrome/browser/web_applications/app_service:test_support", |
| "//components/services/app_service/public/cpp:intents", |
| "//components/services/app_service/public/cpp:preferred_apps", |
| "//components/user_manager", |
| ] |
| } |
| } |