Commit 6bdcf013 authored by Matt Menke's avatar Matt Menke Committed by Chromium LUCI CQ

net: Make tests that assume NIK features are disabled disable them.

In order to make sure NIKs are set everywhere, and working correctly,
I'm working towards getting all tests passing with partitioning enabled.
This is a small step towards that.

Bug: 1082280
Change-Id: I3549ede3f360c9bd3b906f52cb23f3abe775c7ef
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2585834Reviewed-by: default avatarShivani Sharma <shivanisha@chromium.org>
Commit-Queue: Matt Menke <mmenke@chromium.org>
Cr-Commit-Position: refs/heads/master@{#836583}
parent 0b1c63b0
...@@ -82,6 +82,8 @@ class HttpServerPropertiesTest : public TestWithTaskEnvironment { ...@@ -82,6 +82,8 @@ class HttpServerPropertiesTest : public TestWithTaskEnvironment {
HttpServerPropertiesTest() HttpServerPropertiesTest()
: TestWithTaskEnvironment( : TestWithTaskEnvironment(
base::test::TaskEnvironment::TimeSource::MOCK_TIME), base::test::TaskEnvironment::TimeSource::MOCK_TIME),
// Many tests assume partitioning is disabled by default.
feature_list_(CreateFeatureListWithPartitioningDisabled()),
test_tick_clock_(GetMockTickClock()), test_tick_clock_(GetMockTickClock()),
impl_(nullptr /* pref_delegate */, impl_(nullptr /* pref_delegate */,
nullptr /* net_log */, nullptr /* net_log */,
...@@ -96,6 +98,17 @@ class HttpServerPropertiesTest : public TestWithTaskEnvironment { ...@@ -96,6 +98,17 @@ class HttpServerPropertiesTest : public TestWithTaskEnvironment {
network_isolation_key2_ = NetworkIsolationKey(site2, site2); network_isolation_key2_ = NetworkIsolationKey(site2, site2);
} }
// This is a little awkward, but need to create and configure the
// ScopedFeatureList before creating the HttpServerProperties.
static std::unique_ptr<base::test::ScopedFeatureList>
CreateFeatureListWithPartitioningDisabled() {
std::unique_ptr<base::test::ScopedFeatureList> feature_list =
std::make_unique<base::test::ScopedFeatureList>();
feature_list->InitAndDisableFeature(
features::kPartitionHttpServerPropertiesByNetworkIsolationKey);
return feature_list;
}
bool HasAlternativeService(const url::SchemeHostPort& origin, bool HasAlternativeService(const url::SchemeHostPort& origin,
const NetworkIsolationKey& network_isolation_key) { const NetworkIsolationKey& network_isolation_key) {
const AlternativeServiceInfoVector alternative_service_info_vector = const AlternativeServiceInfoVector alternative_service_info_vector =
...@@ -121,6 +134,8 @@ class HttpServerPropertiesTest : public TestWithTaskEnvironment { ...@@ -121,6 +134,8 @@ class HttpServerPropertiesTest : public TestWithTaskEnvironment {
const AlternativeService& alternative_service, const AlternativeService& alternative_service,
int num_times) {} int num_times) {}
std::unique_ptr<base::test::ScopedFeatureList> feature_list_;
const base::TickClock* test_tick_clock_; const base::TickClock* test_tick_clock_;
base::SimpleTestClock test_clock_; base::SimpleTestClock test_clock_;
......
...@@ -10882,8 +10882,11 @@ TEST_P(QuicStreamFactoryTest, CryptoConfigCache) { ...@@ -10882,8 +10882,11 @@ TEST_P(QuicStreamFactoryTest, CryptoConfigCache) {
const char kUserAgentId[] = "spoon"; const char kUserAgentId[] = "spoon";
base::test::ScopedFeatureList feature_list; base::test::ScopedFeatureList feature_list;
feature_list.InitAndEnableFeature( feature_list.InitWithFeatures(
features::kPartitionConnectionsByNetworkIsolationKey); // enabled_features
{features::kPartitionConnectionsByNetworkIsolationKey},
// disabled_features
{features::kPartitionHttpServerPropertiesByNetworkIsolationKey});
const SchemefulSite kSite1(GURL("https://foo.test/")); const SchemefulSite kSite1(GURL("https://foo.test/"));
const NetworkIsolationKey kNetworkIsolationKey1(kSite1, kSite1); const NetworkIsolationKey kNetworkIsolationKey1(kSite1, kSite1);
......
...@@ -152,38 +152,30 @@ TEST(ClientSocketPool, GroupIdToString) { ...@@ -152,38 +152,30 @@ TEST(ClientSocketPool, GroupIdToString) {
} }
TEST(ClientSocketPool, PartitionConnectionsByNetworkIsolationKeyDisabled) { TEST(ClientSocketPool, PartitionConnectionsByNetworkIsolationKeyDisabled) {
// Partitioning connections by NetworkIsolationKey is disabled by default, so
// test both the explicitly and implicitly disabled cases.
const SchemefulSite kSiteFoo(GURL("https://foo.com")); const SchemefulSite kSiteFoo(GURL("https://foo.com"));
const SchemefulSite kSiteBar(GURL("https://bar.com")); const SchemefulSite kSiteBar(GURL("https://bar.com"));
for (bool explicitly_disabled : {false, true}) { base::test::ScopedFeatureList feature_list;
base::test::ScopedFeatureList feature_list; feature_list.InitAndDisableFeature(
if (explicitly_disabled) { features::kPartitionConnectionsByNetworkIsolationKey);
feature_list.InitAndDisableFeature(
features::kPartitionConnectionsByNetworkIsolationKey);
}
ClientSocketPool::GroupId group_id1(HostPortPair("foo", 443), ClientSocketPool::GroupId group_id1(
ClientSocketPool::SocketType::kSsl, HostPortPair("foo", 443), ClientSocketPool::SocketType::kSsl,
PrivacyMode::PRIVACY_MODE_DISABLED, PrivacyMode::PRIVACY_MODE_DISABLED,
NetworkIsolationKey(kSiteFoo, kSiteFoo), NetworkIsolationKey(kSiteFoo, kSiteFoo), false /* disable_secure_dns */);
false /* disable_secure_dns */);
ClientSocketPool::GroupId group_id2(
ClientSocketPool::GroupId group_id2(HostPortPair("foo", 443), HostPortPair("foo", 443), ClientSocketPool::SocketType::kSsl,
ClientSocketPool::SocketType::kSsl, PrivacyMode::PRIVACY_MODE_DISABLED,
PrivacyMode::PRIVACY_MODE_DISABLED, NetworkIsolationKey(kSiteBar, kSiteBar), false /* disable_secure_dns */);
NetworkIsolationKey(kSiteBar, kSiteBar),
false /* disable_secure_dns */); EXPECT_FALSE(group_id1.network_isolation_key().IsFullyPopulated());
EXPECT_FALSE(group_id2.network_isolation_key().IsFullyPopulated());
EXPECT_FALSE(group_id1.network_isolation_key().IsFullyPopulated()); EXPECT_EQ(group_id1.network_isolation_key(),
EXPECT_FALSE(group_id2.network_isolation_key().IsFullyPopulated()); group_id2.network_isolation_key());
EXPECT_EQ(group_id1.network_isolation_key(), EXPECT_EQ(group_id1, group_id2);
group_id2.network_isolation_key());
EXPECT_EQ(group_id1, group_id2); EXPECT_EQ("ssl/foo:443", group_id1.ToString());
EXPECT_EQ("ssl/foo:443", group_id2.ToString());
EXPECT_EQ("ssl/foo:443", group_id1.ToString());
EXPECT_EQ("ssl/foo:443", group_id2.ToString());
}
} }
} // namespace } // namespace
......
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