/tst/nhm-main-test.h

https://gitlab.com/jkaliyap/node-health-monitor-1.3.5 · C Header · 235 lines · 156 code · 56 blank · 23 comment · 0 complexity · 1189155d443f3eb3528fe4fdd62ec443 MD5 · raw file

  1. /* NHM - NodeHealthMonitor
  2. *
  3. * Copyright (C) 2013 Continental Automotive Systems, Inc.
  4. *
  5. * This Source Code Form is subject to the terms of the Mozilla Public License,
  6. * v. 2.0. If a copy of the MPL was not distributed with this file, You can
  7. * obtain one at http://mozilla.org/MPL/2.0/.
  8. *
  9. * Author: Jean-Pierre Bogler <Jean-Pierre.Bogler@continental-corporation.com>
  10. */
  11. /*
  12. * This header file is only used for the unit test. It:
  13. * - Includes headers with stubbed function definitions
  14. * - Redefines the name of real functions to the stub names
  15. * - Includes the main, which will be patched to use the stubs
  16. * - Undefine stubs, to allow usage of the real functions for the tests
  17. */
  18. #ifndef NHM_TEST_MAIN_H
  19. #define NHM_MAIN_TEST_H
  20. /* Include stub header files */
  21. #include <tst/stubs/gen/nhm-dbus-info-stub.h>
  22. #include <tst/stubs/gen/nsm-dbus-consumer-stub.h>
  23. #include <tst/stubs/gen/nsm-dbus-lc-control-stub.h>
  24. #include <tst/stubs/gen/nsm-dbus-lc-consumer-stub.h>
  25. #include <tst/stubs/gio/gio-stub.h>
  26. #include <tst/stubs/dlt/dlt-stub.h>
  27. #include <tst/stubs/nhm/nhm-systemd-stub.h>
  28. #include <tst/stubs/systemd/sd-daemon-stub.h>
  29. #include <tst/stubs/persistence/persistence_client_library_key-stub.h>
  30. /* Redefine some functions to stubs */
  31. #define nhm_systemd_connect \
  32. nhm_systemd_connect_stub
  33. #define nhm_systemd_disconnect \
  34. nhm_systemd_disconnect_stub
  35. #define dlt_register_app \
  36. dlt_register_app_stub
  37. #define dlt_check_library_version \
  38. dlt_check_library_version_stub
  39. #define dlt_register_context \
  40. dlt_register_context_stub
  41. #define dlt_unregister_context \
  42. dlt_unregister_context_stub
  43. #define dlt_unregister_app \
  44. dlt_unregister_app_stub
  45. #define dlt_user_log_write_start \
  46. dlt_user_log_write_start_stub
  47. #define dlt_user_log_write_finish \
  48. dlt_user_log_write_finish_stub
  49. #define dlt_user_log_write_string \
  50. dlt_user_log_write_string_stub
  51. #define dlt_user_log_write_int \
  52. dlt_user_log_write_int_stub
  53. #define dlt_user_log_write_uint \
  54. dlt_user_log_write_uint_stub
  55. #define nhm_dbus_info_emit_app_health_status \
  56. nhm_dbus_info_emit_app_health_status_stub
  57. #define nhm_dbus_info_complete_register_app_status \
  58. nhm_dbus_info_complete_register_app_status_stub
  59. #define nhm_dbus_info_complete_read_statistics \
  60. nhm_dbus_info_complete_read_statistics_stub
  61. #define nhm_dbus_info_complete_request_node_restart \
  62. nhm_dbus_info_complete_request_node_restart_stub
  63. #define nsm_dbus_consumer_proxy_new_sync \
  64. nsm_dbus_consumer_proxy_new_sync_stub
  65. #define nsm_dbus_consumer_call_register_shutdown_client_sync \
  66. nsm_dbus_consumer_call_register_shutdown_client_sync_stub
  67. #define nsm_dbus_lc_consumer_proxy_new_sync \
  68. nsm_dbus_lc_consumer_proxy_new_sync_stub
  69. #define nsm_dbus_lc_consumer_complete_lifecycle_request \
  70. nsm_dbus_lc_consumer_complete_lifecycle_request_stub
  71. #define nsm_dbus_lc_control_proxy_new_sync \
  72. nsm_dbus_lc_control_proxy_new_sync_stub
  73. #define nsm_dbus_lc_control_call_set_app_health_status_sync \
  74. nsm_dbus_lc_control_call_set_app_health_status_sync_stub
  75. #define nsm_dbus_lc_control_call_request_node_restart_sync \
  76. nsm_dbus_lc_control_call_request_node_restart_sync_stub
  77. #define g_file_test \
  78. g_file_test_stub
  79. #define g_file_read_link \
  80. g_file_read_link_stub
  81. #define g_dir_open \
  82. g_dir_open_stub
  83. #define g_dir_read_name \
  84. g_dir_read_name_stub
  85. #define g_dir_close \
  86. g_dir_close_stub
  87. #define g_main_loop_run \
  88. g_main_loop_run_stub
  89. #define g_main_loop_quit \
  90. g_main_loop_quit_stub
  91. #define g_bus_get_sync \
  92. g_bus_get_sync_stub
  93. #define g_dbus_connection_get_unique_name \
  94. g_dbus_connection_get_unique_name_stub
  95. #define g_bus_own_name \
  96. g_bus_own_name_stub
  97. #define g_dbus_interface_skeleton_export \
  98. g_dbus_interface_skeleton_export_stub
  99. #define g_dbus_connection_new_for_address_sync \
  100. g_dbus_connection_new_for_address_sync_stub
  101. #define g_dbus_connection_call_sync \
  102. g_dbus_connection_call_sync_stub
  103. #define g_dbus_connection_signal_subscribe \
  104. g_dbus_connection_signal_subscribe_stub
  105. #define g_dbus_connection_signal_unsubscribe \
  106. g_dbus_connection_signal_unsubscribe_stub
  107. #define g_dbus_connection_call_sync \
  108. g_dbus_connection_call_sync_stub
  109. #define g_timeout_add_seconds \
  110. g_timeout_add_seconds_stub
  111. #define g_signal_connect_data \
  112. g_signal_connect_data_stub
  113. #define g_spawn_sync \
  114. g_spawn_sync_stub
  115. #define sd_notify \
  116. sd_notify_stub
  117. #define pclKeyWriteData \
  118. pclKeyWriteData_stub
  119. #define pclKeyReadData \
  120. pclKeyReadData_stub
  121. #define pclInitLibrary \
  122. pclInitLibrary_stub
  123. #define pclDeinitLibrary \
  124. pclDeinitLibrary_stub
  125. /* Redefine main() to use test frames main() */
  126. #define main \
  127. nhm_main
  128. /* Include the main file. */
  129. #include <src/nhm-main.c>
  130. /* Undefine main to be able to have a main in the test frame */
  131. #undef main
  132. /* Undefine previous redefinitions */
  133. #undef nhm_systemd_connect
  134. #undef nhm_systemd_disconnect
  135. #undef dlt_check_library_version
  136. #undef dlt_register_context
  137. #undef dlt_unregister_context
  138. #undef dlt_unregister_app
  139. #undef dlt_user_log_write_start
  140. #undef dlt_user_log_write_finish
  141. #undef dlt_user_log_write_string
  142. #undef dlt_user_log_write_int
  143. #undef dlt_user_log_write_uint
  144. #undef nhm_dbus_info_emit_app_health_status
  145. #undef nhm_dbus_info_complete_register_app_status
  146. #undef nhm_dbus_info_complete_read_statistics
  147. #undef nhm_dbus_info_complete_request_node_restart
  148. #undef nsm_dbus_consumer_proxy_new_sync
  149. #undef nsm_dbus_consumer_call_register_shutdown_client_sync
  150. #undef nsm_dbus_lc_consumer_proxy_new_sync
  151. #undef nsm_dbus_lc_consumer_complete_lifecycle_request
  152. #undef nsm_dbus_lc_control_proxy_new_sync
  153. #undef nsm_dbus_lc_control_call_set_app_health_status_sync
  154. #undef nsm_dbus_lc_control_call_request_node_restart_sync
  155. #undef g_file_test
  156. #undef g_file_read_link
  157. #undef g_dir_open
  158. #undef g_dir_read_name
  159. #undef g_dir_close
  160. #undef g_main_loop_run
  161. #undef g_main_loop_quit
  162. #undef g_bus_get_sync
  163. #undef g_dbus_connection_get_unique_name
  164. #undef g_bus_own_name
  165. #undef g_dbus_interface_skeleton_export
  166. #undef g_dbus_connection_new_for_address_sync
  167. #undef g_dbus_connection_call_sync
  168. #undef g_dbus_connection_signal_subscribe
  169. #undef g_dbus_connection_signal_unsubscribe
  170. #undef g_dbus_connection_call_sync
  171. #undef g_timeout_add_seconds
  172. #undef g_signal_connect_data
  173. #undef g_spawn_sync
  174. #undef sd_notify
  175. #undef pclKeyWriteData
  176. #undef pclKeyReadData
  177. #undef pclInitLibrary
  178. #undef pclDeinitLibrary
  179. #endif /* NHM_MAIN_TEST_H */