• Home
  • History
  • Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2021 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 /*
18  * Generated mock file from original source file
19  */
20 
21 #include <list>
22 #include <map>
23 #include <string>
24 
25 extern std::map<std::string, int> mock_function_count_map;
26 
27 #include "osi/src/compat.cc"  // For strlcpy
28 
29 #include "osi/include/alarm.h"
30 #include "osi/include/allocator.h"
31 #include "osi/include/array.h"
32 #include "osi/include/buffer.h"
33 #include "osi/include/config.h"
34 #include "osi/include/fixed_queue.h"
35 #include "osi/include/future.h"
36 #include "osi/include/hash_map_utils.h"
37 #include "osi/include/list.h"
38 #include "osi/include/log.h"
39 #include "osi/include/osi.h"
40 #include "osi/include/reactor.h"
41 #include "osi/include/ringbuffer.h"
42 #include "osi/include/semaphore.h"
43 #include "osi/include/socket.h"
44 #include "osi/include/thread.h"
45 #include "osi/include/wakelock.h"
46 #include "test/common/fake_osi.h"
47 
48 #ifndef UNUSED_ATTR
49 #define UNUSED_ATTR
50 #endif
51 
52 std::list<entry_t>::iterator section_t::Find(const std::string& key) {
53   mock_function_count_map[__func__]++;
54   return std::find_if(
55       entries.begin(), entries.end(),
56       [&key](const entry_t& entry) { return entry.key == key; });
57 }
58 std::list<section_t>::iterator config_t::Find(const std::string& section) {
59   mock_function_count_map[__func__]++;
60   return std::find_if(
61       sections.begin(), sections.end(),
62       [&section](const section_t& sec) { return sec.name == section; });
63 }
64 
65 bool checksum_save(const std::string& checksum, const std::string& filename) {
66   mock_function_count_map[__func__]++;
67   return false;
68 }
69 bool config_get_bool(const config_t& config, const std::string& section,
70                      const std::string& key, bool def_value) {
71   mock_function_count_map[__func__]++;
72   return false;
73 }
74 bool config_has_key(const config_t& config, const std::string& section,
75                     const std::string& key) {
76   mock_function_count_map[__func__]++;
77   return false;
78 }
79 bool config_has_section(const config_t& config, const std::string& section) {
80   mock_function_count_map[__func__]++;
81   return false;
82 }
83 bool config_remove_key(config_t* config, const std::string& section,
84                        const std::string& key) {
85   mock_function_count_map[__func__]++;
86   return false;
87 }
88 bool config_remove_section(config_t* config, const std::string& section) {
89   mock_function_count_map[__func__]++;
90   return false;
91 }
92 bool config_save(const config_t& config, const std::string& filename) {
93   mock_function_count_map[__func__]++;
94   return false;
95 }
96 bool config_t::Has(const std::string& key) {
97   mock_function_count_map[__func__]++;
98   return false;
99 }
100 bool section_t::Has(const std::string& key) {
101   mock_function_count_map[__func__]++;
102   return false;
103 }
104 const std::string* config_get_string(const config_t& config,
105                                      const std::string& section,
106                                      const std::string& key,
107                                      const std::string* def_value) {
108   mock_function_count_map[__func__]++;
109   return nullptr;
110 }
111 int config_get_int(const config_t& config, const std::string& section,
112                    const std::string& key, int def_value) {
113   mock_function_count_map[__func__]++;
114   return 0;
115 }
116 std::string checksum_read(const char* filename) {
117   mock_function_count_map[__func__]++;
118   return 0;
119 }
120 std::unique_ptr<config_t> config_new(const char* filename) {
121   mock_function_count_map[__func__]++;
122   return 0;
123 }
124 std::unique_ptr<config_t> config_new_clone(const config_t& src) {
125   mock_function_count_map[__func__]++;
126   return 0;
127 }
128 std::unique_ptr<config_t> config_new_empty(void) {
129   mock_function_count_map[__func__]++;
130   return 0;
131 }
132 uint64_t config_get_uint64(const config_t& config, const std::string& section,
133                            const std::string& key, uint64_t def_value) {
134   mock_function_count_map[__func__]++;
135   return 0;
136 }
137 void config_set_bool(config_t* config, const std::string& section,
138                      const std::string& key, bool value) {
139   mock_function_count_map[__func__]++;
140 }
141 void config_set_int(config_t* config, const std::string& section,
142                     const std::string& key, int value) {
143   mock_function_count_map[__func__]++;
144 }
145 void config_set_string(config_t* config, const std::string& section,
146                        const std::string& key, const std::string& value) {
147   mock_function_count_map[__func__]++;
148 }
149 void config_set_uint64(config_t* config, const std::string& section,
150                        const std::string& key, uint64_t value) {
151   mock_function_count_map[__func__]++;
152 }
153 void section_t::Set(std::string key, std::string value) {
154   mock_function_count_map[__func__]++;
155 }
156 
157 bool array_append_ptr(array_t* array, void* data) {
158   mock_function_count_map[__func__]++;
159   return false;
160 }
161 bool array_append_value(array_t* array, uint32_t value) {
162   mock_function_count_map[__func__]++;
163   return false;
164 }
165 size_t array_length(const array_t* array) {
166   mock_function_count_map[__func__]++;
167   return 0;
168 }
169 void array_free(array_t* array) { mock_function_count_map[__func__]++; }
170 void* array_at(const array_t* array, size_t index) {
171   mock_function_count_map[__func__]++;
172   return nullptr;
173 }
174 void* array_ptr(const array_t* array) {
175   mock_function_count_map[__func__]++;
176   return nullptr;
177 }
178 
179 size_t allocation_tracker_expect_no_allocations(void) {
180   mock_function_count_map[__func__]++;
181   return 0;
182 }
183 size_t allocation_tracker_resize_for_canary(size_t size) {
184   mock_function_count_map[__func__]++;
185   return 0;
186 }
187 void allocation_tracker_reset(void) { mock_function_count_map[__func__]++; }
188 void allocation_tracker_uninit(void) { mock_function_count_map[__func__]++; }
189 void osi_allocator_debug_dump(int fd) { mock_function_count_map[__func__]++; }
190 void* allocation_tracker_notify_alloc(uint8_t allocator_id, void* ptr,
191                                       size_t requested_size) {
192   mock_function_count_map[__func__]++;
193   return nullptr;
194 }
195 void* allocation_tracker_notify_free(UNUSED_ATTR uint8_t allocator_id,
196                                      void* ptr) {
197   mock_function_count_map[__func__]++;
198   return nullptr;
199 }
200 
201 bool reactor_change_registration(reactor_object_t* object,
202                                  void (*read_ready)(void* context),
203                                  void (*write_ready)(void* context)) {
204   mock_function_count_map[__func__]++;
205   return false;
206 }
207 reactor_object_t* reactor_register(reactor_t* reactor, int fd, void* context,
208                                    void (*read_ready)(void* context),
209                                    void (*write_ready)(void* context)) {
210   mock_function_count_map[__func__]++;
211   return nullptr;
212 }
213 reactor_status_t reactor_run_once(reactor_t* reactor) {
214   mock_function_count_map[__func__]++;
215   return REACTOR_STATUS_DONE;
216 }
217 reactor_status_t reactor_start(reactor_t* reactor) {
218   mock_function_count_map[__func__]++;
219   return REACTOR_STATUS_DONE;
220 }
221 reactor_t* reactor_new(void) {
222   mock_function_count_map[__func__]++;
223   return nullptr;
224 }
225 void reactor_free(reactor_t* reactor) { mock_function_count_map[__func__]++; }
226 void reactor_stop(reactor_t* reactor) { mock_function_count_map[__func__]++; }
227 void reactor_unregister(reactor_object_t* obj) {
228   mock_function_count_map[__func__]++;
229 }
230 
231 future_t* future_new(void) {
232   mock_function_count_map[__func__]++;
233   return nullptr;
234 }
235 future_t* future_new_immediate(void* value) {
236   mock_function_count_map[__func__]++;
237   return nullptr;
238 }
239 void future_ready(future_t* future, void* value) {
240   mock_function_count_map[__func__]++;
241 }
242 void mutex_global_lock(void) { mock_function_count_map[__func__]++; }
243 void mutex_global_unlock(void) { mock_function_count_map[__func__]++; }
244 void* future_await(future_t* future) {
245   mock_function_count_map[__func__]++;
246   return nullptr;
247 }
248 
249 bool thread_is_self(const thread_t* thread) {
250   mock_function_count_map[__func__]++;
251   return false;
252 }
253 bool thread_post(thread_t* thread, thread_fn func, void* context) {
254   mock_function_count_map[__func__]++;
255   return false;
256 }
257 bool thread_set_priority(thread_t* thread, int priority) {
258   mock_function_count_map[__func__]++;
259   return false;
260 }
261 bool thread_set_rt_priority(thread_t* thread, int priority) {
262   mock_function_count_map[__func__]++;
263   return false;
264 }
265 const char* thread_name(const thread_t* thread) {
266   mock_function_count_map[__func__]++;
267   return nullptr;
268 }
269 reactor_t* thread_get_reactor(const thread_t* thread) {
270   mock_function_count_map[__func__]++;
271   return nullptr;
272 }
273 thread_t* thread_new(const char* name) {
274   mock_function_count_map[__func__]++;
275   return nullptr;
276 }
277 thread_t* thread_new_sized(const char* name, size_t work_queue_capacity) {
278   mock_function_count_map[__func__]++;
279   return nullptr;
280 }
281 void thread_free(thread_t* thread) { mock_function_count_map[__func__]++; }
282 void thread_join(thread_t* thread) { mock_function_count_map[__func__]++; }
283 void thread_stop(thread_t* thread) { mock_function_count_map[__func__]++; }
284 
285 char* osi_strdup(const char* str) {
286   mock_function_count_map[__func__]++;
287   return nullptr;
288 }
289 char* osi_strndup(const char* str, size_t len) {
290   mock_function_count_map[__func__]++;
291   return nullptr;
292 }
293 void osi_free(void* ptr) { mock_function_count_map[__func__]++; }
294 void osi_free_and_reset(void** p_ptr) { mock_function_count_map[__func__]++; }
295 void* osi_calloc(size_t size) {
296   mock_function_count_map[__func__]++;
297   return nullptr;
298 }
299 void* osi_malloc(size_t size) {
300   mock_function_count_map[__func__]++;
301   return nullptr;
302 }
303 
304 bool fixed_queue_is_empty(fixed_queue_t* queue) {
305   mock_function_count_map[__func__]++;
306   return false;
307 }
308 bool fixed_queue_try_enqueue(fixed_queue_t* queue, void* data) {
309   mock_function_count_map[__func__]++;
310   return false;
311 }
312 fixed_queue_t* fixed_queue_new(size_t capacity) {
313   mock_function_count_map[__func__]++;
314   return nullptr;
315 }
316 int fixed_queue_get_dequeue_fd(const fixed_queue_t* queue) {
317   mock_function_count_map[__func__]++;
318   return 0;
319 }
320 int fixed_queue_get_enqueue_fd(const fixed_queue_t* queue) {
321   mock_function_count_map[__func__]++;
322   return 0;
323 }
324 list_t* fixed_queue_get_list(fixed_queue_t* queue) {
325   mock_function_count_map[__func__]++;
326   return nullptr;
327 }
328 size_t fixed_queue_capacity(fixed_queue_t* queue) {
329   mock_function_count_map[__func__]++;
330   return 0;
331 }
332 size_t fixed_queue_length(fixed_queue_t* queue) {
333   mock_function_count_map[__func__]++;
334   return 0;
335 }
336 void fixed_queue_enqueue(fixed_queue_t* queue, void* data) {
337   mock_function_count_map[__func__]++;
338 }
339 void fixed_queue_flush(fixed_queue_t* queue, fixed_queue_free_cb free_cb) {
340   mock_function_count_map[__func__]++;
341 }
342 void fixed_queue_free(fixed_queue_t* queue, fixed_queue_free_cb free_cb) {
343   mock_function_count_map[__func__]++;
344 }
345 void fixed_queue_register_dequeue(fixed_queue_t* queue, reactor_t* reactor,
346                                   fixed_queue_cb ready_cb, void* context) {
347   mock_function_count_map[__func__]++;
348 }
349 void fixed_queue_unregister_dequeue(fixed_queue_t* queue) {
350   mock_function_count_map[__func__]++;
351 }
352 void* fixed_queue_dequeue(fixed_queue_t* queue) {
353   mock_function_count_map[__func__]++;
354   return nullptr;
355 }
356 void* fixed_queue_try_dequeue(fixed_queue_t* queue) {
357   mock_function_count_map[__func__]++;
358   return nullptr;
359 }
360 void* fixed_queue_try_peek_first(fixed_queue_t* queue) {
361   mock_function_count_map[__func__]++;
362   return nullptr;
363 }
364 void* fixed_queue_try_peek_last(fixed_queue_t* queue) {
365   mock_function_count_map[__func__]++;
366   return nullptr;
367 }
368 void* fixed_queue_try_remove_from_queue(fixed_queue_t* queue, void* data) {
369   mock_function_count_map[__func__]++;
370   return nullptr;
371 }
372 
373 alarm_t* alarm_new(const char* name) {
374   mock_function_count_map[__func__]++;
375   return nullptr;
376 }
377 alarm_t* alarm_new_periodic(const char* name) {
378   mock_function_count_map[__func__]++;
379   return nullptr;
380 }
381 bool alarm_is_scheduled(const alarm_t* alarm) {
382   mock_function_count_map[__func__]++;
383   return false;
384 }
385 uint64_t alarm_get_remaining_ms(const alarm_t* alarm) {
386   mock_function_count_map[__func__]++;
387   return 0;
388 }
389 void alarm_cancel(alarm_t* alarm) { mock_function_count_map[__func__]++; }
390 void alarm_cleanup(void) { mock_function_count_map[__func__]++; }
391 void alarm_debug_dump(int fd) { mock_function_count_map[__func__]++; }
392 void alarm_free(alarm_t* alarm) { mock_function_count_map[__func__]++; }
393 void alarm_set(alarm_t* alarm, uint64_t interval_ms, alarm_callback_t cb,
394                void* data) {
395   mock_function_count_map[__func__]++;
396 }
397 
398 struct fake_osi_alarm_set_on_mloop fake_osi_alarm_set_on_mloop_;
399 void alarm_set_on_mloop(alarm_t* alarm, uint64_t interval_ms,
400                         alarm_callback_t cb, void* data) {
401   mock_function_count_map[__func__]++;
402   fake_osi_alarm_set_on_mloop_.interval_ms = interval_ms;
403   fake_osi_alarm_set_on_mloop_.cb = cb;
404   fake_osi_alarm_set_on_mloop_.data = data;
405 }
406 
407 int osi_rand(void) {
408   mock_function_count_map[__func__]++;
409   return 0;
410 }
411 
412 buffer_t* buffer_new_ref(const buffer_t* buf) {
413   mock_function_count_map[__func__]++;
414   return nullptr;
415 }
416 buffer_t* buffer_new_slice(const buffer_t* buf, size_t slice_size) {
417   mock_function_count_map[__func__]++;
418   return nullptr;
419 }
420 size_t buffer_length(const buffer_t* buf) {
421   mock_function_count_map[__func__]++;
422   return 0;
423 }
424 void buffer_free(buffer_t* buffer) { mock_function_count_map[__func__]++; }
425 void* buffer_ptr(const buffer_t* buf) {
426   mock_function_count_map[__func__]++;
427   return nullptr;
428 }
429 
430 bool socket_listen(const socket_t* socket, port_t port) {
431   mock_function_count_map[__func__]++;
432   return false;
433 }
434 socket_t* socket_accept(const socket_t* socket) {
435   mock_function_count_map[__func__]++;
436   return nullptr;
437 }
438 socket_t* socket_new(void) {
439   mock_function_count_map[__func__]++;
440   return nullptr;
441 }
442 socket_t* socket_new_from_fd(int fd) {
443   mock_function_count_map[__func__]++;
444   return nullptr;
445 }
446 ssize_t socket_bytes_available(const socket_t* socket) {
447   mock_function_count_map[__func__]++;
448   return 0;
449 }
450 ssize_t socket_read(const socket_t* socket, void* buf, size_t count) {
451   mock_function_count_map[__func__]++;
452   return 0;
453 }
454 ssize_t socket_write(const socket_t* socket, const void* buf, size_t count) {
455   mock_function_count_map[__func__]++;
456   return 0;
457 }
458 ssize_t socket_write_and_transfer_fd(const socket_t* socket, const void* buf,
459                                      size_t count, int fd) {
460   mock_function_count_map[__func__]++;
461   return 0;
462 }
463 void socket_free(socket_t* socket) { mock_function_count_map[__func__]++; }
464 void socket_register(socket_t* socket, reactor_t* reactor, void* context,
465                      socket_cb read_cb, socket_cb write_cb) {
466   mock_function_count_map[__func__]++;
467 }
468 void socket_unregister(socket_t* socket) {
469   mock_function_count_map[__func__]++;
470 }
471 
472 bool list_append(list_t* list, void* data) {
473   mock_function_count_map[__func__]++;
474   return false;
475 }
476 bool list_contains(const list_t* list, const void* data) {
477   mock_function_count_map[__func__]++;
478   return false;
479 }
480 bool list_insert_after(list_t* list, list_node_t* prev_node, void* data) {
481   mock_function_count_map[__func__]++;
482   return false;
483 }
484 bool list_is_empty(const list_t* list) {
485   mock_function_count_map[__func__]++;
486   return false;
487 }
488 bool list_prepend(list_t* list, void* data) {
489   mock_function_count_map[__func__]++;
490   return false;
491 }
492 bool list_remove(list_t* list, void* data) {
493   mock_function_count_map[__func__]++;
494   return false;
495 }
496 list_node_t* list_back_node(const list_t* list) {
497   mock_function_count_map[__func__]++;
498   return nullptr;
499 }
500 list_node_t* list_begin(const list_t* list) {
501   mock_function_count_map[__func__]++;
502   return nullptr;
503 }
504 list_node_t* list_end(UNUSED_ATTR const list_t* list) {
505   mock_function_count_map[__func__]++;
506   return nullptr;
507 }
508 list_node_t* list_foreach(const list_t* list, list_iter_cb callback,
509                           void* context) {
510   mock_function_count_map[__func__]++;
511   return nullptr;
512 }
513 list_node_t* list_next(const list_node_t* node) {
514   mock_function_count_map[__func__]++;
515   return nullptr;
516 }
517 list_t* list_new(list_free_cb callback) {
518   mock_function_count_map[__func__]++;
519   return nullptr;
520 }
521 list_t* list_new_internal(list_free_cb callback,
522                           const allocator_t* zeroed_allocator) {
523   mock_function_count_map[__func__]++;
524   return nullptr;
525 }
526 size_t list_length(const list_t* list) {
527   mock_function_count_map[__func__]++;
528   return 0;
529 }
530 void list_clear(list_t* list) { mock_function_count_map[__func__]++; }
531 void list_free(list_t* list) { mock_function_count_map[__func__]++; }
532 void* list_back(const list_t* list) {
533   mock_function_count_map[__func__]++;
534   return nullptr;
535 }
536 void* list_front(const list_t* list) {
537   mock_function_count_map[__func__]++;
538   return nullptr;
539 }
540 void* list_node(const list_node_t* node) {
541   mock_function_count_map[__func__]++;
542   return nullptr;
543 }
544 
545 int osi_socket_local_client(const char* name, int namespaceId, int type) {
546   mock_function_count_map[__func__]++;
547   return 0;
548 }
549 int osi_socket_local_client_connect(int fd, const char* name, int namespaceId,
550                                     int type UNUSED_ATTR) {
551   mock_function_count_map[__func__]++;
552   return 0;
553 }
554 int osi_socket_local_server_bind(int s, const char* name, int namespaceId) {
555   mock_function_count_map[__func__]++;
556   return 0;
557 }
558 int osi_socket_make_sockaddr_un(const char* name, int namespaceId,
559                                 struct sockaddr_un* p_addr, socklen_t* alen) {
560   mock_function_count_map[__func__]++;
561   return 0;
562 }
563 
564 size_t ringbuffer_available(const ringbuffer_t* rb) {
565   mock_function_count_map[__func__]++;
566   return 0;
567 }
568 size_t ringbuffer_delete(ringbuffer_t* rb, size_t length) {
569   mock_function_count_map[__func__]++;
570   return 0;
571 }
572 size_t ringbuffer_insert(ringbuffer_t* rb, const uint8_t* p, size_t length) {
573   mock_function_count_map[__func__]++;
574   return 0;
575 }
576 size_t ringbuffer_peek(const ringbuffer_t* rb, off_t offset, uint8_t* p,
577                        size_t length) {
578   mock_function_count_map[__func__]++;
579   return 0;
580 }
581 size_t ringbuffer_pop(ringbuffer_t* rb, uint8_t* p, size_t length) {
582   mock_function_count_map[__func__]++;
583   return 0;
584 }
585 size_t ringbuffer_size(const ringbuffer_t* rb) {
586   mock_function_count_map[__func__]++;
587   return 0;
588 }
589 void ringbuffer_free(ringbuffer_t* rb) { mock_function_count_map[__func__]++; }
590 
591 bool osi_property_get_bool(const char* key, bool default_value) {
592   mock_function_count_map[__func__]++;
593   return false;
594 }
595 int osi_property_get(const char* key, char* value, const char* default_value) {
596   mock_function_count_map[__func__]++;
597   return 0;
598 }
599 int osi_property_set(const char* key, const char* value) {
600   mock_function_count_map[__func__]++;
601   return 0;
602 }
603 int32_t osi_property_get_int32(const char* key, int32_t default_value) {
604   mock_function_count_map[__func__]++;
605   return 0;
606 }
607 
608 bool semaphore_try_wait(semaphore_t* semaphore) {
609   mock_function_count_map[__func__]++;
610   return false;
611 }
612 int semaphore_get_fd(const semaphore_t* semaphore) {
613   mock_function_count_map[__func__]++;
614   return 0;
615 }
616 semaphore_t* semaphore_new(unsigned int value) {
617   mock_function_count_map[__func__]++;
618   return nullptr;
619 }
620 void semaphore_free(semaphore_t* semaphore) {
621   mock_function_count_map[__func__]++;
622 }
623 void semaphore_post(semaphore_t* semaphore) {
624   mock_function_count_map[__func__]++;
625 }
626 void semaphore_wait(semaphore_t* semaphore) {
627   mock_function_count_map[__func__]++;
628 }
629 
630 bool wakelock_acquire(void) {
631   mock_function_count_map[__func__]++;
632   return false;
633 }
634 bool wakelock_release(void) {
635   mock_function_count_map[__func__]++;
636   return false;
637 }
638 void wakelock_cleanup(void) { mock_function_count_map[__func__]++; }
639 void wakelock_debug_dump(int fd) { mock_function_count_map[__func__]++; }
640 void wakelock_set_os_callouts(bt_os_callouts_t* callouts) {
641   mock_function_count_map[__func__]++;
642 }
643 void wakelock_set_paths(const char* lock_path, const char* unlock_path) {
644   mock_function_count_map[__func__]++;
645 }
646