| Index: chrome/browser/signin/mutable_profile_oauth2_token_service_delegate_unittest.cc
 | 
| diff --git a/chrome/browser/signin/mutable_profile_oauth2_token_service_delegate_unittest.cc b/chrome/browser/signin/mutable_profile_oauth2_token_service_delegate_unittest.cc
 | 
| index a1d51a57533691c73ce5b848ab3949ca547adff9..72fa7b4f460a13abb1eb360248809e3ed499ef25 100644
 | 
| --- a/chrome/browser/signin/mutable_profile_oauth2_token_service_delegate_unittest.cc
 | 
| +++ b/chrome/browser/signin/mutable_profile_oauth2_token_service_delegate_unittest.cc
 | 
| @@ -341,8 +341,65 @@ TEST_F(MutableProfileOAuth2TokenServiceDelegateTest,
 | 
|    EXPECT_EQ(1, end_batch_changes_);
 | 
|    ResetObserverCounts();
 | 
|  
 | 
| -  // TODO(fgorski): Enable below when implemented:
 | 
| -  // EXPECT_TRUE(oauth2_servive_->RefreshTokenIsAvailable("account_id"));
 | 
| +  EXPECT_TRUE(oauth2_service_delegate_->RefreshTokenIsAvailable("account_id"));
 | 
| +  EXPECT_TRUE(oauth2_service_delegate_->RefreshTokenIsAvailable("account_id2"));
 | 
| +
 | 
| +  oauth2_service_delegate_->RevokeAllCredentials();
 | 
| +  EXPECT_EQ(0, token_available_count_);
 | 
| +  EXPECT_EQ(2, token_revoked_count_);
 | 
| +  EXPECT_EQ(0, tokens_loaded_count_);
 | 
| +  EXPECT_EQ(1, start_batch_changes_);
 | 
| +  EXPECT_EQ(1, end_batch_changes_);
 | 
| +  ResetObserverCounts();
 | 
| +}
 | 
| +
 | 
| +TEST_F(MutableProfileOAuth2TokenServiceDelegateTest,
 | 
| +       PersistenceLoadCredentialsEmptyPrimaryAccountId_DiceEnabled) {
 | 
| +  switches::EnableAccountConsistencyDiceForTesting(
 | 
| +      base::CommandLine::ForCurrentProcess());
 | 
| +
 | 
| +  // Ensure DB is clean.
 | 
| +  oauth2_service_delegate_->RevokeAllCredentials();
 | 
| +  ResetObserverCounts();
 | 
| +  // Perform a load from an empty DB.
 | 
| +  EXPECT_EQ(OAuth2TokenServiceDelegate::LOAD_CREDENTIALS_NOT_STARTED,
 | 
| +            oauth2_service_delegate_->GetLoadCredentialsState());
 | 
| +  oauth2_service_delegate_->LoadCredentials("");
 | 
| +  EXPECT_EQ(OAuth2TokenServiceDelegate::LOAD_CREDENTIALS_IN_PROGRESS,
 | 
| +            oauth2_service_delegate_->GetLoadCredentialsState());
 | 
| +  base::RunLoop().RunUntilIdle();
 | 
| +  EXPECT_EQ(OAuth2TokenServiceDelegate::LOAD_CREDENTIALS_FINISHED_WITH_SUCCESS,
 | 
| +            oauth2_service_delegate_->GetLoadCredentialsState());
 | 
| +  EXPECT_EQ(1, start_batch_changes_);
 | 
| +  EXPECT_EQ(1, end_batch_changes_);
 | 
| +  ExpectOneTokensLoadedNotification();
 | 
| +
 | 
| +  // No account should be present in the refresh token as no primary account
 | 
| +  // was passed to the token service.
 | 
| +  EXPECT_TRUE(oauth2_service_delegate_->refresh_tokens_.empty());
 | 
| +
 | 
| +  // Setup a DB with tokens that don't require upgrade and clear memory.
 | 
| +  oauth2_service_delegate_->UpdateCredentials("account_id", "refresh_token");
 | 
| +  oauth2_service_delegate_->UpdateCredentials("account_id2", "refresh_token2");
 | 
| +  oauth2_service_delegate_->refresh_tokens_.clear();
 | 
| +  EXPECT_EQ(2, start_batch_changes_);
 | 
| +  EXPECT_EQ(2, end_batch_changes_);
 | 
| +  ResetObserverCounts();
 | 
| +
 | 
| +  oauth2_service_delegate_->LoadCredentials("");
 | 
| +  EXPECT_EQ(OAuth2TokenServiceDelegate::LOAD_CREDENTIALS_IN_PROGRESS,
 | 
| +            oauth2_service_delegate_->GetLoadCredentialsState());
 | 
| +  base::RunLoop().RunUntilIdle();
 | 
| +  EXPECT_EQ(OAuth2TokenServiceDelegate::LOAD_CREDENTIALS_FINISHED_WITH_SUCCESS,
 | 
| +            oauth2_service_delegate_->GetLoadCredentialsState());
 | 
| +  EXPECT_EQ(2, token_available_count_);
 | 
| +  EXPECT_EQ(0, token_revoked_count_);
 | 
| +  EXPECT_EQ(1, tokens_loaded_count_);
 | 
| +  EXPECT_EQ(1, start_batch_changes_);
 | 
| +  EXPECT_EQ(1, end_batch_changes_);
 | 
| +  ResetObserverCounts();
 | 
| +
 | 
| +  EXPECT_TRUE(oauth2_service_delegate_->RefreshTokenIsAvailable("account_id"));
 | 
|    EXPECT_TRUE(oauth2_service_delegate_->RefreshTokenIsAvailable("account_id2"));
 | 
|  
 | 
|    oauth2_service_delegate_->RevokeAllCredentials();
 | 
| 
 |