Commit 2d3536cb authored by Harvey Yang's avatar Harvey Yang Committed by Chromium LUCI CQ

generic_sensor: Fix PlatformSensorChromeOS StopSensor

Fixes <1aefce02> (generic_sensor: Add
PlatformSensor(Provider)ChromeOS)
Keeps |sensor_device_remote_| when stopping the reads, so that we can
resume the reads with StartSensor later.

BUG=b:172414302
TEST=run on nightfury(hatch)

Change-Id: I37057036ce9697fffad3e37eba6bca7654db398e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2546390
Commit-Queue: Cheng-Hao Yang <chenghaoyang@chromium.org>
Reviewed-by: default avatarRaphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
Cr-Commit-Position: refs/heads/master@{#835122}
parent 2ae70cd7
...@@ -203,7 +203,6 @@ bool PlatformSensorChromeOS::StartSensor( ...@@ -203,7 +203,6 @@ bool PlatformSensorChromeOS::StartSensor(
void PlatformSensorChromeOS::StopSensor() { void PlatformSensorChromeOS::StopSensor() {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
sensor_device_remote_.reset();
receiver_.reset(); receiver_.reset();
} }
......
...@@ -179,13 +179,16 @@ TEST_P(PlatformSensorChromeOSOneChannelTest, GetSamples) { ...@@ -179,13 +179,16 @@ TEST_P(PlatformSensorChromeOSOneChannelTest, GetSamples) {
auto client = std::make_unique<testing::NiceMock<MockPlatformSensorClient>>(); auto client = std::make_unique<testing::NiceMock<MockPlatformSensorClient>>();
sensor_->AddClient(client.get()); sensor_->AddClient(client.get());
sensor_->StartListening(client.get(), double frequency = GetSensorMaxAllowedFrequency(GetParam().first);
PlatformSensorConfiguration( sensor_->StartListening(client.get(), PlatformSensorConfiguration(frequency));
GetSensorMaxAllowedFrequency(GetParam().first)));
EXPECT_TRUE(sensor_->IsActiveForTesting()); EXPECT_TRUE(sensor_->IsActiveForTesting());
WaitForAndCheckReading(client.get()); WaitForAndCheckReading(client.get());
sensor_->StopListening(client.get(), PlatformSensorConfiguration(frequency));
sensor_->StartListening(client.get(), PlatformSensorConfiguration(frequency));
WaitForAndCheckReading(client.get());
sensor_device_->ResetObserverRemote(receiver_id_); sensor_device_->ResetObserverRemote(receiver_id_);
WaitForAndCheckReading(client.get()); WaitForAndCheckReading(client.get());
...@@ -328,13 +331,16 @@ TEST_P(PlatformSensorChromeOSAxesTest, GetSamples) { ...@@ -328,13 +331,16 @@ TEST_P(PlatformSensorChromeOSAxesTest, GetSamples) {
auto client = std::make_unique<testing::NiceMock<MockPlatformSensorClient>>(); auto client = std::make_unique<testing::NiceMock<MockPlatformSensorClient>>();
sensor_->AddClient(client.get()); sensor_->AddClient(client.get());
sensor_->StartListening(client.get(), double frequency = GetSensorMaxAllowedFrequency(GetParam().first);
PlatformSensorConfiguration( sensor_->StartListening(client.get(), PlatformSensorConfiguration(frequency));
GetSensorMaxAllowedFrequency(GetParam().first)));
EXPECT_TRUE(sensor_->IsActiveForTesting()); EXPECT_TRUE(sensor_->IsActiveForTesting());
WaitForAndCheckReading(client.get()); WaitForAndCheckReading(client.get());
sensor_->StopListening(client.get(), PlatformSensorConfiguration(frequency));
sensor_->StartListening(client.get(), PlatformSensorConfiguration(frequency));
WaitForAndCheckReading(client.get());
sensor_device_->ResetObserverRemote(receiver_id_); sensor_device_->ResetObserverRemote(receiver_id_);
WaitForAndCheckReading(client.get()); WaitForAndCheckReading(client.get());
......
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