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

Commit 6e1ea7f0 authored by Chris Manton's avatar Chris Manton
Browse files

unittest: Enum-ify tBTA_DM_EVT and add bta::bta_dm_event_text

Bug: 254884279
Test: gd/cert/run
Tag: #refactor
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 lines
Ignore-AOSP-First: Cherry-pick

Merged-In: If8ee959b1169a1c5011732cb25264d34ac7ae4ac
Change-Id: If8ee959b1169a1c5011732cb25264d34ac7ae4ac
parent 4e208faf
Loading
Loading
Loading
Loading
+17 −2
Original line number Diff line number Diff line
@@ -61,7 +61,7 @@
#define BTA_SERVICE_ID_TO_SERVICE_MASK(id) (1 << (id))

/* DM search events */
enum {
typedef enum : uint16_t {
  /* DM search API events */
  BTA_DM_API_SEARCH_EVT = BTA_SYS_EVT_START(BTA_ID_DM_SEARCH),
  BTA_DM_API_DISCOVER_EVT,
@@ -71,7 +71,22 @@ enum {
  BTA_DM_SEARCH_CMPL_EVT,
  BTA_DM_DISCOVERY_RESULT_EVT,
  BTA_DM_DISC_CLOSE_TOUT_EVT,
};
} tBTA_DM_EVT;

inline std::string bta_dm_event_text(const tBTA_DM_EVT& event) {
  switch (event) {
    CASE_RETURN_TEXT(BTA_DM_API_SEARCH_EVT);
    CASE_RETURN_TEXT(BTA_DM_API_DISCOVER_EVT);
    CASE_RETURN_TEXT(BTA_DM_INQUIRY_CMPL_EVT);
    CASE_RETURN_TEXT(BTA_DM_REMT_NAME_EVT);
    CASE_RETURN_TEXT(BTA_DM_SDP_RESULT_EVT);
    CASE_RETURN_TEXT(BTA_DM_SEARCH_CMPL_EVT);
    CASE_RETURN_TEXT(BTA_DM_DISCOVERY_RESULT_EVT);
    CASE_RETURN_TEXT(BTA_DM_DISC_CLOSE_TOUT_EVT);
    default:
      return base::StringPrintf("UNKNOWN[0x%04x]", event);
  }
}

/* data type for BTA_DM_API_SEARCH_EVT */
typedef struct {
+23 −0
Original line number Diff line number Diff line
@@ -323,3 +323,26 @@ TEST_F(BtaDmTest, bta_dm_encrypt_cback) {
  BTA_DM_ENCRYPT_CBACK_queue.pop();
  ASSERT_EQ(BTA_FAILURE, params_BTM_ILLEGAL_VALUE.result);
}

TEST_F(BtaDmTest, bta_dm_event_text) {
  std::vector<std::pair<tBTA_DM_EVT, std::string>> events = {
      std::make_pair(BTA_DM_API_SEARCH_EVT, "BTA_DM_API_SEARCH_EVT"),
      std::make_pair(BTA_DM_API_DISCOVER_EVT, "BTA_DM_API_DISCOVER_EVT"),
      std::make_pair(BTA_DM_INQUIRY_CMPL_EVT, "BTA_DM_INQUIRY_CMPL_EVT"),
      std::make_pair(BTA_DM_REMT_NAME_EVT, "BTA_DM_REMT_NAME_EVT"),
      std::make_pair(BTA_DM_SDP_RESULT_EVT, "BTA_DM_SDP_RESULT_EVT"),
      std::make_pair(BTA_DM_SEARCH_CMPL_EVT, "BTA_DM_SEARCH_CMPL_EVT"),
      std::make_pair(BTA_DM_DISCOVERY_RESULT_EVT,
                     "BTA_DM_DISCOVERY_RESULT_EVT"),
      std::make_pair(BTA_DM_DISC_CLOSE_TOUT_EVT, "BTA_DM_DISC_CLOSE_TOUT_EVT"),
  };
  for (const auto& event : events) {
    ASSERT_STREQ(event.second.c_str(), bta_dm_event_text(event.first).c_str());
  }
  ASSERT_STREQ(base::StringPrintf("UNKNOWN[0x%04x]",
                                  std::numeric_limits<uint16_t>::max())
                   .c_str(),
               bta_dm_event_text(static_cast<tBTA_DM_EVT>(
                                     std::numeric_limits<uint16_t>::max()))
                   .c_str());
}