Chromium Code Reviews| Index: remoting/test/chromoting_test_driver_environment.cc |
| diff --git a/remoting/test/chromoting_test_driver_environment.cc b/remoting/test/chromoting_test_driver_environment.cc |
| index 356e9010ece3fa7aa5063dadcc1e5294d43477ac..9e7e9abba2a04c8f2871789ea88b3a64aa342a1b 100644 |
| --- a/remoting/test/chromoting_test_driver_environment.cc |
| +++ b/remoting/test/chromoting_test_driver_environment.cc |
| @@ -86,12 +86,10 @@ bool ChromotingTestDriverEnvironment::Initialize( |
| } |
| void ChromotingTestDriverEnvironment::DisplayHostList() { |
| - const char kHostAvailabilityFormatString[] = "%-45s%-15s%-35s"; |
| + const char kHostAvailabilityFormatString[] = "%-25s%-15s%-35s\n"; |
| - LOG(INFO) << base::StringPrintf(kHostAvailabilityFormatString, |
| - "Host Name", "Host Status", "Host JID"); |
| - LOG(INFO) << base::StringPrintf(kHostAvailabilityFormatString, |
| - "---------", "-----------", "--------"); |
| + printf(kHostAvailabilityFormatString, "Host Name", "Host Status", "Host JID"); |
|
garykac
2017/03/03 21:01:58
Is the switch to printf intentional?
joedow
2017/03/03 22:45:59
It was intentional. Using LOG will prepend a bunc
|
| + printf(kHostAvailabilityFormatString, "---------", "-----------", "--------"); |
| std::string status; |
| for (const HostInfo& host_info : host_list_) { |
| @@ -104,31 +102,35 @@ void ChromotingTestDriverEnvironment::DisplayHostList() { |
| status = "UNKNOWN"; |
| } |
| - LOG(INFO) << base::StringPrintf( |
| - kHostAvailabilityFormatString, host_info.host_name.c_str(), |
| - status.c_str(), host_info.host_jid.c_str()); |
| + printf(kHostAvailabilityFormatString, host_info.host_name.c_str(), |
| + status.c_str(), host_info.host_jid.c_str()); |
| } |
| } |
| -bool ChromotingTestDriverEnvironment::WaitForHostOnline( |
| - const std::string& host_jid, |
| - const std::string& host_name) { |
| +bool ChromotingTestDriverEnvironment::WaitForHostOnline() { |
| if (host_list_.empty()) { |
| RetrieveHostList(); |
| } |
| + DisplayHostList(); |
| + |
| // Refresh the |host_list_| periodically to check if expected JID is online. |
| const base::TimeDelta kTotalTimeInSeconds = base::TimeDelta::FromSeconds(60); |
| const base::TimeDelta kSleepTimeInSeconds = base::TimeDelta::FromSeconds(5); |
| const int kMaxIterations = kTotalTimeInSeconds / kSleepTimeInSeconds; |
| int num_iterations = 0; |
|
garykac
2017/03/03 21:01:58
No longer used.
joedow
2017/03/03 22:45:59
Good catch
|
| - while (num_iterations < kMaxIterations) { |
| + for (int iterations = 0; iterations < kMaxIterations; iterations++) { |
| + if (!FindHostInHostList()) { |
| + LOG(WARNING) << "Host '" << host_name_ << "' with JID '" << host_jid_ |
| + << "' not found in host list."; |
| + return false; |
| + } |
| + |
| if (host_info_.IsReadyForConnection()) { |
| - if (num_iterations > 0) { |
| + if (iterations > 0) { |
| VLOG(0) << "Host online after: " |
| - << num_iterations * kSleepTimeInSeconds.InSeconds() |
| - << " seconds."; |
| + << iterations * kSleepTimeInSeconds.InSeconds() << " seconds."; |
| } |
| return true; |
| } |
| @@ -136,14 +138,31 @@ bool ChromotingTestDriverEnvironment::WaitForHostOnline( |
| // Wait a while before refreshing host list. |
| base::PlatformThread::Sleep(kSleepTimeInSeconds); |
| RefreshHostList(); |
| - ++num_iterations; |
| } |
| - LOG(ERROR) << "Host with JID '" << host_jid << "' still not online after " |
| + LOG(ERROR) << "Host '" << host_name_ << "' with JID '" << host_jid_ |
| + << "' still not online after " |
| << num_iterations * kSleepTimeInSeconds.InSeconds() << " seconds."; |
| return false; |
| } |
| +bool ChromotingTestDriverEnvironment::FindHostInHostList() { |
| + bool host_found = false; |
| + for (HostInfo& host_info : host_list_) { |
| + // The JID is optional so we consider an empty string to be a '*' match. |
| + bool host_jid_match = |
| + host_jid_.empty() || (host_jid_ == host_info.host_jid); |
| + bool host_name_match = host_name_ == host_info.host_name; |
| + |
| + if (host_name_match && host_jid_match) { |
| + host_info_ = host_info; |
| + host_found = true; |
| + break; |
| + } |
| + } |
| + return host_found; |
| +} |
| + |
| void ChromotingTestDriverEnvironment::SetAccessTokenFetcherForTest( |
| AccessTokenFetcher* access_token_fetcher) { |
| DCHECK(access_token_fetcher); |
| @@ -306,28 +325,7 @@ bool ChromotingTestDriverEnvironment::RetrieveHostList() { |
| return false; |
| } |
| - DisplayHostList(); |
| - for (HostInfo& host_info : host_list_) { |
| - // The JID is optional so we consider an empty string to be a '*' match. |
| - bool host_jid_match = |
| - host_jid_.empty() || (host_jid_ == host_info.host_jid); |
| - bool host_name_match = host_name_ == host_info.host_name; |
| - |
| - if (host_name_match && host_jid_match) { |
| - host_info_ = host_info; |
| - |
| - if (host_info.IsReadyForConnection()) { |
| - return true; |
| - } else { |
| - LOG(WARNING) << "Host '" << host_name_ << "' with JID '" << host_jid_ |
| - << "' not online."; |
| - return false; |
| - } |
| - } |
| - } |
| - LOG(WARNING) << "Host '" << host_name_ << "' with JID '" << host_jid_ |
| - << "' not found in host list."; |
| - return false; |
| + return true; |
| } |
| void ChromotingTestDriverEnvironment::OnHostListRetrieved( |