Commit 0f0f9541 authored by Tanja Gornak's avatar Tanja Gornak Committed by Commit Bot

Enable FCMInvalidations on bots.

Bug: 801985
Change-Id: I182041d580aff43661c227e421fc596506280cee
Reviewed-on: https://chromium-review.googlesource.com/1203998Reviewed-by: default avatarJan Krcal <jkrcal@chromium.org>
Reviewed-by: default avatarPavel Yatsuk <pavely@chromium.org>
Reviewed-by: default avatarRobert Kaplow (sloooow) <rkaplow@chromium.org>
Commit-Queue: Tatiana Gornak <melandory@chromium.org>
Cr-Commit-Position: refs/heads/master@{#595054}
parent 9061e0d8
......@@ -11,6 +11,7 @@
#include "base/location.h"
#include "base/single_thread_task_runner.h"
#include "chrome/browser/invalidation/deprecated_profile_invalidation_provider_factory.h"
#include "chrome/browser/invalidation/profile_invalidation_provider_factory.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/signin/identity_manager_factory.h"
#include "chrome/browser/signin/signin_manager_factory.h"
......@@ -19,6 +20,7 @@
#include "chrome/test/base/testing_profile.h"
#include "components/browser_sync/profile_sync_service.h"
#include "components/browser_sync/profile_sync_test_util.h"
#include "components/invalidation/impl/invalidation_switches.h"
#include "components/invalidation/impl/profile_invalidation_provider.h"
#include "components/signin/core/browser/signin_manager.h"
#include "components/sync/driver/startup_controller.h"
......@@ -54,10 +56,16 @@ ProfileSyncService::InitParams CreateProfileSyncServiceParamsForTest(
init_params.start_behavior = ProfileSyncService::MANUAL_START;
init_params.sync_client = std::move(sync_client);
init_params.network_time_update_callback = base::DoNothing();
bool fcm_invalidations_enabled =
base::FeatureList::IsEnabled(invalidation::switches::kFCMInvalidations);
init_params.invalidations_identity_provider =
invalidation::DeprecatedProfileInvalidationProviderFactory::GetForProfile(
profile)
->GetIdentityProvider();
fcm_invalidations_enabled
? invalidation::ProfileInvalidationProviderFactory::GetForProfile(
profile)
->GetIdentityProvider()
: invalidation::DeprecatedProfileInvalidationProviderFactory::
GetForProfile(profile)
->GetIdentityProvider();
init_params.url_loader_factory =
content::BrowserContext::GetDefaultStoragePartition(profile)
->GetURLLoaderFactoryForBrowserProcess();
......
......@@ -34,6 +34,7 @@
#include "chrome/browser/chrome_notification_types.h"
#include "chrome/browser/history/history_service_factory.h"
#include "chrome/browser/invalidation/deprecated_profile_invalidation_provider_factory.h"
#include "chrome/browser/invalidation/profile_invalidation_provider_factory.h"
#include "chrome/browser/lifetime/application_lifetime.h"
#include "chrome/browser/net/system_network_context_manager.h"
#include "chrome/browser/profiles/profile_manager.h"
......@@ -647,6 +648,8 @@ void SyncTest::SetupMockGaiaResponsesForProfile(Profile* profile) {
}
void SyncTest::SetUpInvalidations(int index) {
bool fcm_invalidations_enabled =
base::FeatureList::IsEnabled(invalidation::switches::kFCMInvalidations);
switch (server_type_) {
case EXTERNAL_LIVE_SERVER:
// DO NOTHING. External live sync servers use GCM to notify profiles of
......@@ -655,12 +658,22 @@ void SyncTest::SetUpInvalidations(int index) {
break;
case IN_PROCESS_FAKE_SERVER: {
KeyedService* test_factory =
invalidation::DeprecatedProfileInvalidationProviderFactory::
GetInstance()
->SetTestingFactoryAndUse(
GetProfile(index),
BuildFakeServerProfileInvalidationProvider);
KeyedService* test_factory;
if (fcm_invalidations_enabled) {
test_factory =
invalidation::ProfileInvalidationProviderFactory::GetInstance()
->SetTestingFactoryAndUse(
GetProfile(index),
BuildFakeServerProfileInvalidationProvider);
} else {
test_factory =
invalidation::DeprecatedProfileInvalidationProviderFactory::
GetInstance()
->SetTestingFactoryAndUse(
GetProfile(index),
BuildFakeServerProfileInvalidationProvider);
}
invalidation::InvalidationService* invalidation_service =
static_cast<invalidation::ProfileInvalidationProvider*>(test_factory)
->GetInvalidationService();
......@@ -683,8 +696,15 @@ void SyncTest::SetUpInvalidations(int index) {
TestUsesSelfNotifications()
? BuildSelfNotifyingP2PProfileInvalidationProvider
: BuildRealisticP2PProfileInvalidationProvider;
invalidation::DeprecatedProfileInvalidationProviderFactory::GetInstance()
->SetTestingFactoryAndUse(GetProfile(index), invalidation_provider);
if (fcm_invalidations_enabled) {
invalidation::ProfileInvalidationProviderFactory::GetInstance()
->SetTestingFactoryAndUse(GetProfile(index), invalidation_provider);
} else {
invalidation::DeprecatedProfileInvalidationProviderFactory::
GetInstance()
->SetTestingFactoryAndUse(GetProfile(index),
invalidation_provider);
}
}
}
......@@ -704,10 +724,20 @@ void SyncTest::InitializeInvalidations(int index) {
}
case SERVER_TYPE_UNDECIDED:
case LOCAL_PYTHON_SERVER:
invalidation::InvalidationService* invalidation_service =
invalidation::DeprecatedProfileInvalidationProviderFactory::
GetForProfile(GetProfile(index))
->GetInvalidationService();
bool fcm_invalidations_enabled = base::FeatureList::IsEnabled(
invalidation::switches::kFCMInvalidations);
invalidation::InvalidationService* invalidation_service;
if (fcm_invalidations_enabled) {
invalidation_service =
invalidation::ProfileInvalidationProviderFactory::GetForProfile(
GetProfile(index))
->GetInvalidationService();
} else {
invalidation_service =
invalidation::DeprecatedProfileInvalidationProviderFactory::
GetForProfile(GetProfile(index))
->GetInvalidationService();
}
invalidation::P2PInvalidationService* p2p_invalidation_service =
static_cast<invalidation::P2PInvalidationService*>(
invalidation_service);
......
......@@ -1797,6 +1797,23 @@
]
}
],
"FCMInvalidationsExperiment": [
{
"platforms": [
"windows",
"mac",
"chromeos"
],
"experiments": [
{
"name": "FCMInvalidationsEnabled",
"enable_features": [
"FCMInvalidations"
]
}
]
}
],
"FrameTypePriorityExperiment": [
{
"platforms": [
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment