Commit 6461d6cc authored by Jimmy Gong's avatar Jimmy Gong Committed by Commit Bot

Phonehub: Set PhoneStatusProcessor as an observer to MultiDeviceSetupClient

- This change fixes a bug where we previously did not actually attach
  PhoneStatusProcessor as an observer to
  MultiDeviceSetupClient::Observer
- Fixes a bug where the phone name was not being displayed in the phone
  hub tray

Bug: 1106937
Fixed: 1141642
Test: chromeos_components_unittests
Change-Id: I4a7b04e34a5b7950b63a4b32dc633fece7c52e0a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2501063
Commit-Queue: Jimmy Gong <jimmyxgong@chromium.org>
Reviewed-by: default avatarKyle Horimoto <khorimoto@chromium.org>
Cr-Commit-Position: refs/heads/master@{#821424}
parent b9e03afb
...@@ -187,6 +187,7 @@ PhoneStatusProcessor::PhoneStatusProcessor( ...@@ -187,6 +187,7 @@ PhoneStatusProcessor::PhoneStatusProcessor(
message_receiver_->AddObserver(this); message_receiver_->AddObserver(this);
feature_status_provider_->AddObserver(this); feature_status_provider_->AddObserver(this);
multidevice_setup_client_->AddObserver(this);
MaybeSetPhoneModelName(multidevice_setup_client_->GetHostStatus().second); MaybeSetPhoneModelName(multidevice_setup_client_->GetHostStatus().second);
} }
...@@ -194,6 +195,7 @@ PhoneStatusProcessor::PhoneStatusProcessor( ...@@ -194,6 +195,7 @@ PhoneStatusProcessor::PhoneStatusProcessor(
PhoneStatusProcessor::~PhoneStatusProcessor() { PhoneStatusProcessor::~PhoneStatusProcessor() {
message_receiver_->RemoveObserver(this); message_receiver_->RemoveObserver(this);
feature_status_provider_->RemoveObserver(this); feature_status_provider_->RemoveObserver(this);
multidevice_setup_client_->RemoveObserver(this);
} }
void PhoneStatusProcessor::SetReceivedNotifications( void PhoneStatusProcessor::SetReceivedNotifications(
......
...@@ -248,7 +248,7 @@ TEST_F(PhoneStatusProcessorTest, PhoneStatusUpdate) { ...@@ -248,7 +248,7 @@ TEST_F(PhoneStatusProcessorTest, PhoneStatusUpdate) {
EXPECT_FALSE(mutable_phone_model_->phone_status_model().has_value()); EXPECT_FALSE(mutable_phone_model_->phone_status_model().has_value());
} }
TEST_F(PhoneStatusProcessorTest, NoHostPhoneName) { TEST_F(PhoneStatusProcessorTest, PhoneName) {
fake_multidevice_setup_client_->SetHostStatusWithDevice( fake_multidevice_setup_client_->SetHostStatusWithDevice(
std::make_pair(HostStatus::kHostVerified, base::nullopt)); std::make_pair(HostStatus::kHostVerified, base::nullopt));
CreatePhoneStatusProcessor(); CreatePhoneStatusProcessor();
...@@ -265,6 +265,17 @@ TEST_F(PhoneStatusProcessorTest, NoHostPhoneName) { ...@@ -265,6 +265,17 @@ TEST_F(PhoneStatusProcessorTest, NoHostPhoneName) {
EXPECT_EQ(0u, fake_notification_manager_->num_notifications()); EXPECT_EQ(0u, fake_notification_manager_->num_notifications());
EXPECT_EQ(base::nullopt, mutable_phone_model_->phone_name()); EXPECT_EQ(base::nullopt, mutable_phone_model_->phone_name());
// Create new fake phone with name.
const multidevice::RemoteDeviceRef kFakePhoneA =
multidevice::RemoteDeviceRefBuilder().SetName("Phone A").Build();
// Trigger a host status update and expect a new phone with new name to be
// updated.
fake_multidevice_setup_client_->SetHostStatusWithDevice(
std::make_pair(HostStatus::kHostVerified, kFakePhoneA));
EXPECT_EQ(base::UTF8ToUTF16("Phone A"), mutable_phone_model_->phone_name());
} }
} // namespace phonehub } // namespace phonehub
......
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