Index: chrome/browser/policy/policy_network_browsertest.cc |
diff --git a/chrome/browser/policy/policy_network_browsertest.cc b/chrome/browser/policy/policy_network_browsertest.cc |
index 7aed8c46b6de0cf7310f1f0a67757166036fcf0c..458fb8386d845fb09d6ab966a823a88e9d66e041 100644 |
--- a/chrome/browser/policy/policy_network_browsertest.cc |
+++ b/chrome/browser/policy/policy_network_browsertest.cc |
@@ -28,9 +28,11 @@ void VerifyQuicEnabledStatus(net::URLRequestContextGetter* getter, |
bool quic_enabled_expected, |
const base::Closure& done_callback) { |
net::URLRequestContext* context = getter->GetURLRequestContext(); |
- bool quic_enabled = context->http_transaction_factory()->GetSession()-> |
- params().enable_quic; |
- EXPECT_EQ(quic_enabled_expected, quic_enabled); |
+ bool quic_enabled_for_new_streams = context->http_transaction_factory() |
+ ->GetSession() |
+ ->params() |
+ .enable_quic_for_new_streams(); |
+ EXPECT_EQ(quic_enabled_expected, quic_enabled_for_new_streams); |
content::BrowserThread::PostTask(content::BrowserThread::UI, FROM_HERE, |
done_callback); |
@@ -55,7 +57,7 @@ namespace policy { |
// when these are being written. |
class QuicAllowedPolicyTestBase: public InProcessBrowserTest { |
public: |
- QuicAllowedPolicyTestBase() : InProcessBrowserTest(){} |
+ QuicAllowedPolicyTestBase() : InProcessBrowserTest() {} |
protected: |
void SetUpInProcessBrowserTestFixture() override { |
@@ -71,15 +73,16 @@ class QuicAllowedPolicyTestBase: public InProcessBrowserTest { |
virtual void GetQuicAllowedPolicy(PolicyMap* values) = 0; |
- private: |
MockConfigurationPolicyProvider provider_; |
+ |
+ private: |
DISALLOW_COPY_AND_ASSIGN(QuicAllowedPolicyTestBase); |
}; |
// Policy QuicAllowed set to false. |
class QuicAllowedPolicyIsFalse: public QuicAllowedPolicyTestBase { |
public: |
- QuicAllowedPolicyIsFalse() : QuicAllowedPolicyTestBase(){} |
+ QuicAllowedPolicyIsFalse() : QuicAllowedPolicyTestBase() {} |
protected: |
void GetQuicAllowedPolicy(PolicyMap* values) override { |
@@ -99,7 +102,7 @@ IN_PROC_BROWSER_TEST_F(QuicAllowedPolicyIsFalse, QuicDisallowed) { |
// Policy QuicAllowed set to true. |
class QuicAllowedPolicyIsTrue: public QuicAllowedPolicyTestBase { |
public: |
- QuicAllowedPolicyIsTrue() : QuicAllowedPolicyTestBase(){} |
+ QuicAllowedPolicyIsTrue() : QuicAllowedPolicyTestBase() {} |
protected: |
void GetQuicAllowedPolicy(PolicyMap* values) override { |
@@ -119,7 +122,7 @@ IN_PROC_BROWSER_TEST_F(QuicAllowedPolicyIsTrue, QuicAllowed) { |
// Policy QuicAllowed is not set. |
class QuicAllowedPolicyIsNotSet: public QuicAllowedPolicyTestBase { |
public: |
- QuicAllowedPolicyIsNotSet() : QuicAllowedPolicyTestBase(){} |
+ QuicAllowedPolicyIsNotSet() : QuicAllowedPolicyTestBase() {} |
protected: |
void GetQuicAllowedPolicy(PolicyMap* values) override { |
@@ -133,4 +136,29 @@ IN_PROC_BROWSER_TEST_F(QuicAllowedPolicyIsNotSet, NoQuicRegulations) { |
VerifyQuicEnabledStatusInIOThread(true); |
} |
+// Policy QuicAllowed is set after IOThread initialization. |
+class QuicAllowedPolicyIsSetToFalseAfterInit |
+ : public QuicAllowedPolicyTestBase { |
+ public: |
+ QuicAllowedPolicyIsSetToFalseAfterInit() : QuicAllowedPolicyTestBase() {} |
+ |
+ protected: |
+ void GetQuicAllowedPolicy(PolicyMap* values) override {} |
+ |
+ void SetUpOnMainThread() override { |
+ PolicyMap values; |
+ values.Set(key::kQuicAllowed, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
+ base::MakeUnique<base::FundamentalValue>(false), nullptr); |
+ provider_.UpdateChromePolicy(values); |
+ base::RunLoop().RunUntilIdle(); |
+ } |
+ |
+ private: |
+ DISALLOW_COPY_AND_ASSIGN(QuicAllowedPolicyIsSetToFalseAfterInit); |
+}; |
+ |
+IN_PROC_BROWSER_TEST_F(QuicAllowedPolicyIsSetToFalseAfterInit, QuicDisallowed) { |
+ VerifyQuicEnabledStatusInIOThread(false); |
+} |
} // namespace policy |