Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 83f77de2 authored by Chris Manton's avatar Chris Manton
Browse files

Encapsulate btif::set_hal_cbacks

Bug: 333932865
Test: m .
Flag: EXEMPT, Test Infrastructure

Change-Id: Ifb4e475ee0fc485e2e2aefc1b30202a2803cb610
parent 28b4dfe2
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -397,7 +397,9 @@ static bluetooth::core::CoreInterface* CreateInterfaceToProfiles() {
 ******************************************************************************/

static bool interface_ready(void) { return bt_hal_cbacks != NULL; }
void set_hal_cbacks(bt_callbacks_t* callbacks) { bt_hal_cbacks = callbacks; }
static void set_hal_cbacks(bt_callbacks_t* callbacks) {
  bt_hal_cbacks = callbacks;
}

static bool is_profile(const char* p1, const char* p2) {
  log::assert_that(p1 != nullptr, "assert failed: p1 != nullptr");
@@ -1530,3 +1532,8 @@ void invoke_key_missing_cb(RawAddress bd_addr) {
                                  },
                                  bd_addr));
}

namespace bluetooth::testing {
void set_hal_cbacks(bt_callbacks_t* callbacks) { ::set_hal_cbacks(callbacks); }

}  // namespace bluetooth::testing
+7 −1
Original line number Diff line number Diff line
@@ -37,7 +37,9 @@
#include "test/mock/mock_stack_btm_sec.h"
#include "types/raw_address.h"

namespace bluetooth::testing {
void set_hal_cbacks(bt_callbacks_t* callbacks);
}  // namespace bluetooth::testing

const tBTA_AG_RES_DATA tBTA_AG_RES_DATA::kEmpty = {};

@@ -108,6 +110,8 @@ void generate_local_oob_data_callback(tBT_TRANSPORT /* transport */,
                                      bt_oob_data_t /* oob_data */) {}
void switch_buffer_size_callback(bool /* is_low_latency_buffer_size */) {}
void switch_codec_callback(bool /* is_low_latency_buffer_size */) {}
void le_rand_callback(uint64_t /* random */) {}
void key_missing_callback(const RawAddress /* bd_addr */) {}
#undef TESTCB

bt_callbacks_t callbacks = {
@@ -131,6 +135,8 @@ bt_callbacks_t callbacks = {
    .generate_local_oob_data_cb = generate_local_oob_data_callback,
    .switch_buffer_size_cb = switch_buffer_size_callback,
    .switch_codec_cb = switch_codec_callback,
    .le_rand_cb = le_rand_callback,
    .key_missing_cb = key_missing_callback,
};

}  // namespace
@@ -140,7 +146,7 @@ class BtifCoreTest : public ::testing::Test {
  void SetUp() override {
    callback_map_.clear();
    bluetooth::hci::testing::mock_controller_ = &controller_;
    set_hal_cbacks(&callbacks);
    bluetooth::testing::set_hal_cbacks(&callbacks);
    auto promise = std::promise<void>();
    auto future = promise.get_future();
    callback_map_["callback_thread_event"] = [&promise]() {
+3 −1
Original line number Diff line number Diff line
@@ -35,7 +35,9 @@

using namespace std::chrono_literals;

namespace bluetooth::testing {
void set_hal_cbacks(bt_callbacks_t* callbacks);
}  // namespace bluetooth::testing

// Used the legacy stack manager
module_t bt_utils_module;
@@ -154,7 +156,7 @@ class BtifHhWithHalCallbacksTest : public BtifHhWithMockTest {
    bt_callbacks.thread_evt_cb = [](bt_cb_thread_evt evt) {
      g_thread_evt_promise.set_value(evt);
    };
    set_hal_cbacks(&bt_callbacks);
    bluetooth::testing::set_hal_cbacks(&bt_callbacks);
    // Start the jni callback thread
    InitializeCoreInterface();
    ASSERT_EQ(std::future_status::ready, future.wait_for(2s));
+0 −5
Original line number Diff line number Diff line
@@ -48,7 +48,6 @@ struct get_remote_device_property get_remote_device_property;
struct get_remote_services get_remote_services;
struct le_test_mode le_test_mode;
struct set_remote_device_property set_remote_device_property;
struct set_hal_cbacks set_hal_cbacks;
struct invoke_switch_buffer_size_cb invoke_switch_buffer_size_cb;

}  // namespace btif_bluetooth
@@ -105,10 +104,6 @@ int set_remote_device_property(RawAddress* remote_addr,
  return test::mock::btif_bluetooth::set_remote_device_property(remote_addr,
                                                                property);
}
void set_hal_cbacks(bt_callbacks_t* callbacks) {
  inc_func_call_count(__func__);
  test::mock::btif_bluetooth::set_hal_cbacks(callbacks);
}
void invoke_switch_buffer_size_cb(bool invoke_switch_buffer_size_cb) {
  inc_func_call_count(__func__);
  test::mock::btif_bluetooth::invoke_switch_buffer_size_cb(
+0 −10
Original line number Diff line number Diff line
@@ -146,16 +146,6 @@ struct set_remote_device_property {
  };
};
extern struct set_remote_device_property set_remote_device_property;
// Name: set_hal_cbacks
// Params: bt_callbacks_t* callbacks
// Returns: void
struct set_hal_cbacks {
  std::function<void(bt_callbacks_t* callbacks)> body{
      [](bt_callbacks_t* /* callbacks */) { ; }};
  void operator()(bt_callbacks_t* callbacks) { body(callbacks); };
};
extern struct set_hal_cbacks set_hal_cbacks;

// Name: invoke_switch_buffer_size_cb
// Params: bool invoke_switch_buffer_size_cb
// Returns: void