Commit 2038d0d7 authored by Marzena Dell'Aquila's avatar Marzena Dell'Aquila Committed by Commit Bot

[Chromecast][BLE] Separate LeScanManager interface and impl

The impl now lives in /chromecast/device/bluetooth/le:le_impl target.
Necessary to introduce a separate implementation for Fuchsia platform.
LeScanManager::RestartScan was renamed to ResumeScan to better reflect
the usage.

Bug: b/148704118
Test: cast_bluetooth_unittests, cast_internal_bluetooth_unittests

Change-Id: Ie58b406b690954666b6eca96be30a26f2ad1effa
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2160106Reviewed-by: default avatarLuke Halliwell (slow) <halliwell@chromium.org>
Commit-Queue: Marzena Dell'Aquila <mdellaquila@google.com>
Cr-Commit-Position: refs/heads/master@{#762162}
parent 5e9c485d
......@@ -13,8 +13,6 @@ cast_source_set("le") {
"gatt_client_manager_impl.cc",
"gatt_client_manager_impl.h",
"le_scan_manager.h",
"le_scan_manager_impl.cc",
"le_scan_manager_impl.h",
"le_scan_result.cc",
"le_scan_result.h",
"remote_characteristic.h",
......@@ -46,6 +44,21 @@ cast_source_set("le") {
]
}
cast_source_set("le_impl") {
sources = [
"le_scan_manager_impl.cc",
"le_scan_manager_impl.h",
]
deps = [
":le",
"//base",
"//chromecast/base",
"//chromecast/device/bluetooth:util",
"//chromecast/device/bluetooth/shlib",
]
}
cast_source_set("test_support") {
testonly = true
......@@ -83,6 +96,7 @@ cast_source_set("unittests") {
]
deps = [
":le",
":le_impl",
":test_support",
"//base",
"//base/test:test_support",
......
......@@ -65,7 +65,7 @@ class LeScanManager {
virtual void PauseScan() {}
virtual void RestartScan() {}
virtual void ResumeScan() {}
virtual void SetScanParameters(int scan_interval_ms, int scan_window_ms) {}
......
......@@ -126,8 +126,8 @@ void LeScanManagerImpl::PauseScan() {
}
}
void LeScanManagerImpl::RestartScan() {
MAKE_SURE_IO_THREAD(RestartScan);
void LeScanManagerImpl::ResumeScan() {
MAKE_SURE_IO_THREAD(ResumeScan);
if (scan_handle_ids_.empty()) {
LOG(ERROR) << "Can't restart scan, no scan handle";
return;
......
......@@ -43,7 +43,7 @@ class LeScanManagerImpl : public LeScanManager,
base::Optional<ScanFilter> service_uuid = base::nullopt) override;
void ClearScanResults() override;
void PauseScan() override;
void RestartScan() override;
void ResumeScan() override;
void SetScanParameters(int scan_interval_ms, int scan_window_ms) override;
private:
......
......@@ -97,14 +97,14 @@ TEST_F(LeScanManagerTest, TestEnableDisableScan) {
task_environment_.RunUntilIdle();
}
TEST_F(LeScanManagerTest, TestPauseRestartScan) {
TEST_F(LeScanManagerTest, TestPauseResumeScan) {
std::unique_ptr<LeScanManager::ScanHandle> scan_handle;
// Don't call StartScan or StopScan if there is no handle.
EXPECT_CALL(le_scanner_, StopScan()).Times(0);
le_scan_manager_.PauseScan();
EXPECT_CALL(le_scanner_, StartScan()).Times(0);
le_scan_manager_.RestartScan();
le_scan_manager_.ResumeScan();
task_environment_.RunUntilIdle();
// Create a handle.
......@@ -121,10 +121,10 @@ TEST_F(LeScanManagerTest, TestPauseRestartScan) {
le_scan_manager_.PauseScan();
task_environment_.RunUntilIdle();
// Restart scan.
// Resume scan.
EXPECT_CALL(mock_observer_, OnScanEnableChanged(_)).Times(0);
EXPECT_CALL(le_scanner_, StartScan()).WillOnce(Return(true));
le_scan_manager_.RestartScan();
le_scan_manager_.ResumeScan();
task_environment_.RunUntilIdle();
// Delete the handle.
......
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