BT5.3 Enhanced Connection update - mock

Add some mock around 5.3 feature

Bug: 248126637
Test: atest BluetoothInstrumentationTests
Change-Id: I0cf44da7eb0c4b0bfbd4090a926f5aa449d0c456
diff --git a/system/test/mock/mock_main_shim_acl_api.cc b/system/test/mock/mock_main_shim_acl_api.cc
index 55ffd4c..55b5c84 100644
--- a/system/test/mock/mock_main_shim_acl_api.cc
+++ b/system/test/mock/mock_main_shim_acl_api.cc
@@ -86,3 +86,15 @@
 void bluetooth::shim::ACL_ClearAddressResolution() {
   mock_function_count_map[__func__]++;
 }
+void bluetooth::shim::ACL_LeSetDefaultSubrate(uint16_t subrate_min,
+                                              uint16_t subrate_max,
+                                              uint16_t max_latency,
+                                              uint16_t cont_num,
+                                              uint16_t sup_tout) {
+  mock_function_count_map[__func__]++;
+}
+void bluetooth::shim::ACL_LeSubrateRequest(
+    uint16_t hci_handle, uint16_t subrate_min, uint16_t subrate_max,
+    uint16_t max_latency, uint16_t cont_num, uint16_t sup_tout) {
+  mock_function_count_map[__func__]++;
+}
diff --git a/system/test/mock/mock_main_shim_acl_api.h b/system/test/mock/mock_main_shim_acl_api.h
index cb08047..f33f037 100644
--- a/system/test/mock/mock_main_shim_acl_api.h
+++ b/system/test/mock/mock_main_shim_acl_api.h
@@ -118,6 +118,39 @@
 };
 extern struct ACL_ClearFilterAcceptList ACL_ClearFilterAcceptList;
 
+// Name: ACL_LeSetDefaultSubrate
+// Params:
+// Return: void
+struct ACL_LeSetDefaultSubrate {
+  std::function<void(uint16_t subrate_min, uint16_t subrate_max,
+                     uint16_t max_latency, uint16_t cont_num,
+                     uint16_t sup_tout)>
+      body{[](uint16_t subrate_min, uint16_t subrate_max, uint16_t max_latency,
+              uint16_t cont_num, uint16_t sup_tout) {}};
+  void operator()(uint16_t subrate_min, uint16_t subrate_max,
+                  uint16_t max_latency, uint16_t cont_num, uint16_t sup_tout) {
+    body(subrate_min, subrate_max, max_latency, cont_num, sup_tout);
+  };
+};
+extern struct ACL_LeSetDefaultSubrate ACL_LeSetDefaultSubrate;
+
+// Name: ACL_LeSubrateRequest
+// Params:
+// Return: void
+struct ACL_LeSubrateRequest {
+  std::function<void(uint16_t hci_handle, uint16_t subrate_min,
+                     uint16_t subrate_max, uint16_t max_latency,
+                     uint16_t cont_num, uint16_t sup_tout)>
+      body{[](uint16_t hci_handle, uint16_t subrate_min, uint16_t subrate_max,
+              uint16_t max_latency, uint16_t cont_num, uint16_t sup_tout) {}};
+  void operator()(uint16_t hci_handle, uint16_t subrate_min,
+                  uint16_t subrate_max, uint16_t max_latency, uint16_t cont_num,
+                  uint16_t sup_tout) {
+    body(hci_handle, subrate_min, subrate_max, max_latency, cont_num, sup_tout);
+  };
+};
+extern struct ACL_LeSubrateRequest ACL_LeSubrateRequest;
+
 // Name: ACL_ConfigureLePrivacy
 // Params: bool is_le_privacy_enabled
 // Return: void
diff --git a/system/test/mock/mock_stack_acl.cc b/system/test/mock/mock_stack_acl.cc
index 2726394..e9e20b5 100644
--- a/system/test/mock/mock_stack_acl.cc
+++ b/system/test/mock/mock_stack_acl.cc
@@ -68,6 +68,10 @@
 struct acl_peer_supports_ble_packet_extension
     acl_peer_supports_ble_packet_extension;
 struct acl_peer_supports_sniff_subrating acl_peer_supports_sniff_subrating;
+struct acl_peer_supports_ble_connection_subrating
+    acl_peer_supports_ble_connection_subrating;
+struct acl_peer_supports_ble_connection_subrating_host
+    acl_peer_supports_ble_connection_subrating_host;
 struct acl_refresh_remote_address acl_refresh_remote_address;
 struct acl_set_peer_le_features_from_handle
     acl_set_peer_le_features_from_handle;
@@ -269,6 +273,17 @@
   mock_function_count_map[__func__]++;
   return test::mock::stack_acl::acl_peer_supports_sniff_subrating(remote_bda);
 }
+bool acl_peer_supports_ble_connection_subrating(const RawAddress& remote_bda) {
+  mock_function_count_map[__func__]++;
+  return test::mock::stack_acl::acl_peer_supports_ble_connection_subrating(
+      remote_bda);
+}
+bool acl_peer_supports_ble_connection_subrating_host(
+    const RawAddress& remote_bda) {
+  mock_function_count_map[__func__]++;
+  return test::mock::stack_acl::acl_peer_supports_ble_connection_subrating_host(
+      remote_bda);
+}
 bool acl_refresh_remote_address(const RawAddress& identity_address,
                                 tBLE_ADDR_TYPE identity_address_type,
                                 const RawAddress& bda,
diff --git a/system/test/mock/mock_stack_acl.h b/system/test/mock/mock_stack_acl.h
index 054e7bf..8222f17 100644
--- a/system/test/mock/mock_stack_acl.h
+++ b/system/test/mock/mock_stack_acl.h
@@ -268,6 +268,26 @@
 };
 extern struct acl_peer_supports_sniff_subrating
     acl_peer_supports_sniff_subrating;
+// Name: acl_peer_supports_ble_connection_subrating
+// Params: const RawAddress& remote_bda
+// Returns: bool
+struct acl_peer_supports_ble_connection_subrating {
+  std::function<bool(const RawAddress& remote_bda)> body{
+      [](const RawAddress& remote_bda) { return false; }};
+  bool operator()(const RawAddress& remote_bda) { return body(remote_bda); };
+};
+extern struct acl_peer_supports_ble_connection_subrating
+    acl_peer_supports_ble_connection_subrating;
+// Name: acl_peer_supports_ble_connection_subrating_host
+// Params: const RawAddress& remote_bda
+// Returns: bool
+struct acl_peer_supports_ble_connection_subrating_host {
+  std::function<bool(const RawAddress& remote_bda)> body{
+      [](const RawAddress& remote_bda) { return false; }};
+  bool operator()(const RawAddress& remote_bda) { return body(remote_bda); };
+};
+extern struct acl_peer_supports_ble_connection_subrating_host
+    acl_peer_supports_ble_connection_subrating_host;
 // Name: acl_refresh_remote_address
 // Params: const RawAddress& identity_address, tBLE_ADDR_TYPE
 // identity_address_type, const RawAddress& bda, tBLE_ADDR_TYPE rra_type,
diff --git a/system/test/mock/mock_stack_gatt_main.cc b/system/test/mock/mock_stack_gatt_main.cc
index a89bb62..a4dc5ab 100644
--- a/system/test/mock/mock_stack_gatt_main.cc
+++ b/system/test/mock/mock_stack_gatt_main.cc
@@ -98,6 +98,11 @@
                              uint8_t tx_phy, uint8_t rx_phy) {
   mock_function_count_map[__func__]++;
 }
+void gatt_notify_subrate_change(uint16_t handle, uint16_t subrate_factor,
+                                uint16_t latency, uint16_t cont_num,
+                                uint16_t timeout, uint8_t status) {
+  mock_function_count_map[__func__]++;
+}
 void gatt_proc_srv_chg(void) { mock_function_count_map[__func__]++; }
 void gatt_send_srv_chg_ind(const RawAddress& peer_bda) {
   mock_function_count_map[__func__]++;
diff --git a/system/test/mock/mock_stack_l2cap_ble.cc b/system/test/mock/mock_stack_l2cap_ble.cc
index a66064f..eeff00c 100644
--- a/system/test/mock/mock_stack_l2cap_ble.cc
+++ b/system/test/mock/mock_stack_l2cap_ble.cc
@@ -74,6 +74,7 @@
 struct L2CA_AdjustConnectionIntervals L2CA_AdjustConnectionIntervals;
 struct l2cble_use_preferred_conn_params l2cble_use_preferred_conn_params;
 struct L2CA_SubrateRequest L2CA_SubrateRequest;
+struct l2cble_process_subrate_change_evt l2cble_process_subrate_change_evt;
 
 }  // namespace stack_l2cap_ble
 }  // namespace mock
@@ -206,5 +207,13 @@
   return test::mock::stack_l2cap_ble::L2CA_SubrateRequest(
       rem_bda, subrate_min, subrate_max, max_latency, cont_num, timeout);
 }
+void l2cble_process_subrate_change_evt(uint16_t handle, uint8_t status,
+                                       uint16_t subrate_factor,
+                                       uint16_t peripheral_latency,
+                                       uint16_t cont_num, uint16_t timeout) {
+  mock_function_count_map[__func__]++;
+  test::mock::stack_l2cap_ble::l2cble_process_subrate_change_evt(
+      handle, status, subrate_factor, peripheral_latency, cont_num, timeout);
+}
 
 // END mockcify generation
diff --git a/system/test/mock/mock_stack_l2cap_ble.h b/system/test/mock/mock_stack_l2cap_ble.h
index 9de9b3d..11f14f9 100644
--- a/system/test/mock/mock_stack_l2cap_ble.h
+++ b/system/test/mock/mock_stack_l2cap_ble.h
@@ -331,6 +331,24 @@
   };
 };
 extern struct L2CA_SubrateRequest L2CA_SubrateRequest;
+// Name: l2cble_process_subrate_change_evt
+// Params: const RawAddress& bda
+// Returns: void
+struct l2cble_process_subrate_change_evt {
+  std::function<void(uint16_t handle, uint8_t status, uint16_t subrate_factor,
+                     uint16_t peripheral_latency, uint16_t cont_num,
+                     uint16_t timeout)>
+      body{[](uint16_t handle, uint8_t status, uint16_t subrate_factor,
+              uint16_t peripheral_latency, uint16_t cont_num,
+              uint16_t timeout) {}};
+  void operator()(uint16_t handle, uint8_t status, uint16_t subrate_factor,
+                  uint16_t peripheral_latency, uint16_t cont_num,
+                  uint16_t timeout) {
+    body(handle, status, subrate_factor, peripheral_latency, cont_num, timeout);
+  };
+};
+extern struct l2cble_process_subrate_change_evt
+    l2cble_process_subrate_change_evt;
 
 }  // namespace stack_l2cap_ble
 }  // namespace mock