Commit ca65cc4a authored by Matt Menard's avatar Matt Menard Committed by Chromium LUCI CQ

16+ print servers scaling disabled

This ensures when the print-server-scaling flag is disabled that print
servers acts identically for >16 servers as it does for <=16 servers.
This fixes a regression.

Bug: b:168650771
Change-Id: I6ed183bdb87fdd2440dea7893884310ccf5e60cf
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2626118
Commit-Queue: Matt Menard <mattme@google.com>
Reviewed-by: default avatarSean Kau <skau@chromium.org>
Cr-Commit-Position: refs/heads/master@{#843910}
parent 7c012bb2
......@@ -11,12 +11,14 @@
#include "base/containers/flat_map.h"
#include "base/containers/flat_set.h"
#include "base/sequenced_task_runner.h"
#include "base/test/scoped_feature_list.h"
#include "base/test/task_environment.h"
#include "base/threading/sequenced_task_runner_handle.h"
#include "chrome/browser/chromeos/printing/print_servers_provider.h"
#include "chrome/browser/chromeos/printing/server_printers_provider.h"
#include "chrome/common/pref_names.h"
#include "chrome/test/base/testing_browser_process.h"
#include "chromeos/constants/chromeos_features.h"
#include "components/prefs/pref_service.h"
#include "components/sync_preferences/testing_pref_service_syncable.h"
#include "content/public/test/browser_task_environment.h"
......@@ -87,6 +89,10 @@ class FakePrintServersProvider : public PrintServersProvider {
class PrintServersManagerTest : public testing::Test,
public PrintServersManager::Observer {
public:
void SetUp() override {
scoped_feature_list_.InitWithFeatures(
{chromeos::features::kPrintServerScaling}, {});
}
PrintServersManagerTest() {
auto server_printers_provider =
std::make_unique<FakeServerPrintersProvider>();
......@@ -118,6 +124,8 @@ class PrintServersManagerTest : public testing::Test,
// Everything from PrintServersProvider must be called on Chrome_UIThread
content::BrowserTaskEnvironment task_environment_;
base::test::ScopedFeatureList scoped_feature_list_;
// Captured printer lists from observer callbacks.
base::flat_map<PrinterClass, std::vector<Printer>> observed_printers_;
......
......@@ -5,11 +5,13 @@
#include "chrome/browser/chromeos/printing/print_servers_policy_provider.h"
#include "base/bind.h"
#include "base/feature_list.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/chromeos/printing/print_servers_provider.h"
#include "chrome/browser/chromeos/printing/print_servers_provider_factory.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/common/pref_names.h"
#include "chromeos/constants/chromeos_features.h"
namespace chromeos {
......@@ -85,6 +87,9 @@ void PrintServersPolicyProvider::OnServersChanged(
ServerPrintersFetchingMode PrintServersPolicyProvider::GetFetchingMode(
const std::map<GURL, PrintServer>& all_servers) {
if (!base::FeatureList::IsEnabled(chromeos::features::kPrintServerScaling)) {
return ServerPrintersFetchingMode::kStandard;
}
return all_servers.size() <= kMaxRecords
? ServerPrintersFetchingMode::kStandard
: ServerPrintersFetchingMode::kSingleServerOnly;
......
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