1 /*
2 * Copyright 2022 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17 #include "internal_include/stack_config.h"
18
19 #include <gmock/gmock.h>
20 #include <gtest/gtest.h>
21
22 #include <cstdarg>
23 #include <cstring>
24
25 // TODO(b/369381361) Enfore -Wmissing-prototypes
26 #pragma GCC diagnostic ignored "-Wmissing-prototypes"
27
28 const std::string kSmpOptions("mock smp options");
29 const std::string kBroadcastAudioConfigOptions("mock broadcast audio config options");
get_pts_avrcp_test(void)30 bool get_pts_avrcp_test(void) { return false; }
get_pts_secure_only_mode(void)31 bool get_pts_secure_only_mode(void) { return false; }
get_pts_conn_updates_disabled(void)32 bool get_pts_conn_updates_disabled(void) { return false; }
get_pts_crosskey_sdp_disable(void)33 bool get_pts_crosskey_sdp_disable(void) { return false; }
get_pts_smp_options(void)34 const std::string* get_pts_smp_options(void) { return &kSmpOptions; }
get_pts_smp_failure_case(void)35 int get_pts_smp_failure_case(void) { return 123; }
get_pts_force_eatt_for_notifications(void)36 bool get_pts_force_eatt_for_notifications(void) { return false; }
get_pts_connect_eatt_unconditionally(void)37 bool get_pts_connect_eatt_unconditionally(void) { return false; }
get_pts_connect_eatt_before_encryption(void)38 bool get_pts_connect_eatt_before_encryption(void) { return false; }
get_pts_unencrypt_broadcast(void)39 bool get_pts_unencrypt_broadcast(void) { return false; }
get_pts_eatt_peripheral_collision_support(void)40 bool get_pts_eatt_peripheral_collision_support(void) { return false; }
get_pts_use_eatt_for_all_services(void)41 bool get_pts_use_eatt_for_all_services(void) { return false; }
get_pts_force_le_audio_multiple_contexts_metadata(void)42 bool get_pts_force_le_audio_multiple_contexts_metadata(void) { return false; }
get_pts_l2cap_ecoc_upper_tester(void)43 bool get_pts_l2cap_ecoc_upper_tester(void) { return false; }
get_pts_l2cap_ecoc_min_key_size(void)44 int get_pts_l2cap_ecoc_min_key_size(void) { return -1; }
get_pts_l2cap_ecoc_initial_chan_cnt(void)45 int get_pts_l2cap_ecoc_initial_chan_cnt(void) { return -1; }
get_pts_l2cap_ecoc_connect_remaining(void)46 bool get_pts_l2cap_ecoc_connect_remaining(void) { return false; }
get_pts_l2cap_ecoc_send_num_of_sdu(void)47 int get_pts_l2cap_ecoc_send_num_of_sdu(void) { return -1; }
get_pts_l2cap_ecoc_reconfigure(void)48 bool get_pts_l2cap_ecoc_reconfigure(void) { return false; }
get_pts_broadcast_audio_config_options(void)49 const std::string* get_pts_broadcast_audio_config_options(void) {
50 return &kBroadcastAudioConfigOptions;
51 }
get_pts_le_audio_disable_ases_before_stopping(void)52 bool get_pts_le_audio_disable_ases_before_stopping(void) { return false; }
53 struct config_t;
get_all(void)54 config_t* get_all(void) { return nullptr; }
55 struct packet_fragmenter_t;
packet_fragmenter_get_interface()56 const packet_fragmenter_t* packet_fragmenter_get_interface() { return nullptr; }
57
58 stack_config_t mock_stack_config{
59 .get_pts_avrcp_test = get_pts_avrcp_test,
60 .get_pts_secure_only_mode = get_pts_secure_only_mode,
61 .get_pts_conn_updates_disabled = get_pts_conn_updates_disabled,
62 .get_pts_crosskey_sdp_disable = get_pts_crosskey_sdp_disable,
63 .get_pts_smp_options = get_pts_smp_options,
64 .get_pts_smp_failure_case = get_pts_smp_failure_case,
65 .get_pts_force_eatt_for_notifications = get_pts_force_eatt_for_notifications,
66 .get_pts_connect_eatt_unconditionally = get_pts_connect_eatt_unconditionally,
67 .get_pts_connect_eatt_before_encryption = get_pts_connect_eatt_before_encryption,
68 .get_pts_unencrypt_broadcast = get_pts_unencrypt_broadcast,
69 .get_pts_eatt_peripheral_collision_support = get_pts_eatt_peripheral_collision_support,
70 .get_pts_use_eatt_for_all_services = get_pts_use_eatt_for_all_services,
71 .get_pts_force_le_audio_multiple_contexts_metadata =
72 get_pts_force_le_audio_multiple_contexts_metadata,
73 .get_pts_l2cap_ecoc_upper_tester = get_pts_l2cap_ecoc_upper_tester,
74 .get_pts_l2cap_ecoc_min_key_size = get_pts_l2cap_ecoc_min_key_size,
75 .get_pts_l2cap_ecoc_initial_chan_cnt = get_pts_l2cap_ecoc_initial_chan_cnt,
76 .get_pts_l2cap_ecoc_connect_remaining = get_pts_l2cap_ecoc_connect_remaining,
77 .get_pts_l2cap_ecoc_send_num_of_sdu = get_pts_l2cap_ecoc_send_num_of_sdu,
78 .get_pts_l2cap_ecoc_reconfigure = get_pts_l2cap_ecoc_reconfigure,
79 .get_pts_broadcast_audio_config_options = get_pts_broadcast_audio_config_options,
80 .get_pts_le_audio_disable_ases_before_stopping =
81 get_pts_le_audio_disable_ases_before_stopping,
82 .get_all = get_all,
83 };
84
stack_config_get_interface(void)85 const stack_config_t* stack_config_get_interface(void) { return &mock_stack_config; }
86