Commit 591a1d8e authored by Sophie Chang's avatar Sophie Chang Committed by Chromium LUCI CQ

Disable the previews feature in PredictionManagerBrowserTest

This also only instantiates the previews opt guide if previews are
allowed.

The root of the flake is that Previews was registering the opt target
which caused the fetch for regular profiles. By disabling the previews
feature in our tests, we are able to better isolate the logic we want
to test. (Previews was default enabled on Linux)

Bug: 1158257
Change-Id: I3bfe66979bb156698e438b26e2bccf6c172dd140
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2590708
Commit-Queue: Sophie Chang <sophiechang@chromium.org>
Reviewed-by: default avatarMichael Crouse <mcrouse@chromium.org>
Cr-Commit-Position: refs/heads/master@{#836864}
parent d459371e
...@@ -32,7 +32,7 @@ ...@@ -32,7 +32,7 @@
#include "components/optimization_guide/proto/models.pb.h" #include "components/optimization_guide/proto/models.pb.h"
#include "components/optimization_guide/store_update_data.h" #include "components/optimization_guide/store_update_data.h"
#include "components/page_load_metrics/browser/page_load_metrics_test_waiter.h" #include "components/page_load_metrics/browser/page_load_metrics_test_waiter.h"
#include "components/previews/core/previews_switches.h" #include "components/previews/core/previews_features.h"
#include "components/variations/hashing.h" #include "components/variations/hashing.h"
#include "content/public/test/browser_test.h" #include "content/public/test/browser_test.h"
#include "content/public/test/browser_test_utils.h" #include "content/public/test/browser_test_utils.h"
...@@ -447,11 +447,11 @@ class PredictionManagerBrowserTest : public PredictionManagerBrowserTestBase { ...@@ -447,11 +447,11 @@ class PredictionManagerBrowserTest : public PredictionManagerBrowserTestBase {
private: private:
void InitializeFeatureList() override { void InitializeFeatureList() override {
scoped_feature_list_.InitWithFeatures( scoped_feature_list_.InitWithFeatures(
{optimization_guide::features::kOptimizationHints, {optimization_guide::features::kOptimizationHints,
optimization_guide::features::kRemoteOptimizationGuideFetching, optimization_guide::features::kRemoteOptimizationGuideFetching,
optimization_guide::features::kOptimizationTargetPrediction}, optimization_guide::features::kOptimizationTargetPrediction},
{}); {previews::features::kPreviews});
} }
}; };
...@@ -701,9 +701,9 @@ IN_PROC_BROWSER_TEST_F(PredictionManagerBrowserTest, ...@@ -701,9 +701,9 @@ IN_PROC_BROWSER_TEST_F(PredictionManagerBrowserTest,
1); 1);
} }
// TODO(crbug/1158257): Re-enable when not flaky. IN_PROC_BROWSER_TEST_F(
IN_PROC_BROWSER_TEST_F(PredictionManagerBrowserTest, PredictionManagerBrowserTest,
DISABLED_IncognitoDoesntFetchModels) { DISABLE_ON_WIN_MAC_CHROMEOS(IncognitoDoesntFetchModels)) {
SetResponseType(PredictionModelsFetcherRemoteResponseType:: SetResponseType(PredictionModelsFetcherRemoteResponseType::
kSuccessfulWithModelsAndFeatures); kSuccessfulWithModelsAndFeatures);
base::HistogramTester histogram_tester; base::HistogramTester histogram_tester;
...@@ -888,7 +888,7 @@ class PredictionManagerNoUserPermissionsTest ...@@ -888,7 +888,7 @@ class PredictionManagerNoUserPermissionsTest
"scoped_feature_list_trial_for_OptimizationHints,scoped_feature_" "scoped_feature_list_trial_for_OptimizationHints,scoped_feature_"
"list_trial_for_OptimizationHintsFetching"}}}, "list_trial_for_OptimizationHintsFetching"}}},
}, },
{}); {previews::features::kPreviews});
} }
}; };
...@@ -987,7 +987,7 @@ class PredictionManagerModelDownloadingBrowserTest ...@@ -987,7 +987,7 @@ class PredictionManagerModelDownloadingBrowserTest
"scoped_feature_list_trial_for_OptimizationHints,scoped_feature_" "scoped_feature_list_trial_for_OptimizationHints,scoped_feature_"
"list_trial_for_OptimizationHintsFetching"}}}, "list_trial_for_OptimizationHintsFetching"}}},
}, },
{}); {previews::features::kPreviews});
SetExpectedFieldTrialNames(base::flat_set<uint32_t>( SetExpectedFieldTrialNames(base::flat_set<uint32_t>(
{variations::HashName( {variations::HashName(
"scoped_feature_list_trial_for_OptimizationHints"), "scoped_feature_list_trial_for_OptimizationHints"),
...@@ -1007,6 +1007,10 @@ IN_PROC_BROWSER_TEST_F( ...@@ -1007,6 +1007,10 @@ IN_PROC_BROWSER_TEST_F(
SetResponseType(PredictionModelsFetcherRemoteResponseType:: SetResponseType(PredictionModelsFetcherRemoteResponseType::
kSuccessfulWithInvalidModelFile); kSuccessfulWithInvalidModelFile);
// Registering should initiate the fetch and receive a response with a model
// containing a download URL and then subsequently downloaded.
RegisterModelFileObserverWithKeyedService();
RetryForHistogramUntilCountReached( RetryForHistogramUntilCountReached(
&histogram_tester, &histogram_tester,
"OptimizationGuide.PredictionModelDownloadManager.DownloadStatus", 1); "OptimizationGuide.PredictionModelDownloadManager.DownloadStatus", 1);
......
...@@ -189,6 +189,7 @@ void PreviewsService::Initialize( ...@@ -189,6 +189,7 @@ void PreviewsService::Initialize(
OptimizationGuideKeyedService* optimization_guide_keyed_service = OptimizationGuideKeyedService* optimization_guide_keyed_service =
OptimizationGuideKeyedServiceFactory::GetForProfile(profile); OptimizationGuideKeyedServiceFactory::GetForProfile(profile);
if (optimization_guide_keyed_service && if (optimization_guide_keyed_service &&
previews::params::ArePreviewsAllowed() &&
data_reduction_proxy::DataReductionProxySettings:: data_reduction_proxy::DataReductionProxySettings::
IsDataSaverEnabledByUser(profile->IsOffTheRecord(), IsDataSaverEnabledByUser(profile->IsOffTheRecord(),
profile->GetPrefs())) { profile->GetPrefs())) {
......
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