Index: chrome/browser/signin/force_signin_verifier_unittest.cc |
diff --git a/chrome/browser/signin/force_signin_verifier_unittest.cc b/chrome/browser/signin/force_signin_verifier_unittest.cc |
index d5f2f5551714a9c6cc996daaee0ab14d5c829a3e..23cf4f1a38b62fcb065380db1f357ea68ddf9663 100644 |
--- a/chrome/browser/signin/force_signin_verifier_unittest.cc |
+++ b/chrome/browser/signin/force_signin_verifier_unittest.cc |
@@ -24,6 +24,13 @@ class MockForceSigninVerifier : public ForceSigninVerifier { |
OAuth2TokenService::Request* request() { return GetRequestForTesting(); } |
+ bool IsCountdownTimerRunning() { |
+ base::Timer* timer = GetWindowCloseTimerForTesting(); |
+ return timer && timer->IsRunning(); |
+ } |
+ |
+ void OnShowDialog() { StartCountdown(); } |
+ |
MOCK_METHOD0(ShowDialog, void(void)); |
}; |
@@ -124,3 +131,16 @@ TEST_F(ForceSigninVerifierTest, OnReconnected) { |
ASSERT_NE(nullptr, verifier_->request()); |
ASSERT_FALSE(verifier_->IsDelayTaskPosted()); |
} |
+ |
+TEST_F(ForceSigninVerifierTest, OnGetTokenPersistentFailureAndStartCountdown) { |
+ ASSERT_EQ(nullptr, verifier_->request()); |
+ ASSERT_FALSE(verifier_->IsCountdownTimerRunning()); |
+ EXPECT_CALL(*verifier_.get(), ShowDialog()) |
+ .WillOnce(::testing::Invoke(verifier_.get(), |
+ &MockForceSigninVerifier::OnShowDialog)); |
+ |
+ verifier_->SendTestRequest(); |
+ verifier_->OnGetTokenFailure(verifier_->request(), persistent_error_); |
+ |
+ ASSERT_TRUE(verifier_->IsCountdownTimerRunning()); |
+} |