You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

224 lines
5.3 KiB

  1. ---
  2. # Notes:
  3. # Sample project C code is not presently written to produce a release artifact.
  4. # As such, release build options are disabled.
  5. # This sample, therefore, only demonstrates running a collection of unit tests.
  6. :project:
  7. :use_exceptions: FALSE
  8. :use_test_preprocessor: TRUE
  9. :use_auxiliary_dependencies: TRUE
  10. :build_root: build
  11. # :release_build: TRUE
  12. :test_file_prefix: test_
  13. :which_ceedling: gem
  14. :ceedling_version: 0.31.1
  15. :default_tasks:
  16. - test:all
  17. #:test_build:
  18. # :use_assembly: TRUE
  19. #:release_build:
  20. # :output: MyApp.out
  21. # :use_assembly: FALSE
  22. :environment:
  23. :extension:
  24. :executable: .out
  25. :paths:
  26. :test:
  27. - +:test/**
  28. - -:test/support
  29. :source:
  30. - src/**
  31. :support:
  32. - test/support
  33. :libraries: []
  34. :defines:
  35. # in order to add common defines:
  36. # 1) remove the trailing [] from the :common: section
  37. # 2) add entries to the :common: section (e.g. :test: has TEST defined)
  38. :common: &common_defines []
  39. :test:
  40. - *common_defines
  41. - TEST
  42. :test_preprocess:
  43. - *common_defines
  44. - TEST
  45. :cmock:
  46. :mock_prefix: mock_
  47. :when_no_prototypes: :warn
  48. :enforce_strict_ordering: TRUE
  49. :plugins:
  50. - :ignore
  51. - :callback
  52. :treat_as:
  53. uint8: HEX8
  54. uint16: HEX16
  55. uint32: UINT32
  56. int8: INT8
  57. bool: UINT8
  58. # Add -gcov to the plugins list to make sure of the gcov plugin
  59. # You will need to have gcov and gcovr both installed to make it work.
  60. # For more information on these options, see docs in plugins/gcov
  61. :gcov:
  62. :reports:
  63. - HtmlDetailed
  64. :gcovr:
  65. :html_medium_threshold: 75
  66. :html_high_threshold: 90
  67. #:tools:
  68. # Ceedling defaults to using gcc for compiling, linking, etc.
  69. # As [:tools] is blank, gcc will be used (so long as it's in your system path)
  70. # See documentation to configure a given toolchain for use
  71. # LIBRARIES
  72. # These libraries are automatically injected into the build process. Those specified as
  73. # common will be used in all types of builds. Otherwise, libraries can be injected in just
  74. # tests or releases. These options are MERGED with the options in supplemental yaml files.
  75. :libraries:
  76. :placement: :end
  77. :flag: "-l${1}"
  78. :path_flag: "-L ${1}"
  79. :system: [] # for example, you might list 'm' to grab the math library
  80. :test: []
  81. :release: []
  82. :plugins:
  83. :load_paths:
  84. - "#{Ceedling.load_path}"
  85. :enabled:
  86. - stdout_pretty_tests_report
  87. - module_generator
  88. - xml_tests_report
  89. - gcov
  90. :gcov:
  91. #:utilities:
  92. # - gcovr
  93. :reports:
  94. # Make an HTML report with line by line coverage of each source file.
  95. # Supported utilities: gcovr, ReportGenerator
  96. - HtmlDetailed
  97. :gcovr:
  98. # HTML report filename.
  99. :html_artifact_filename: my-project name
  100. # Use 'title' as title for the HTML report.
  101. # Default is 'Head'. (gcovr --html-title)
  102. :html_title: my-project name---
  103. # Notes:
  104. # Sample project C code is not presently written to produce a release artifact.
  105. # As such, release build options are disabled.
  106. # This sample, therefore, only demonstrates running a collection of unit tests.
  107. :project:
  108. :use_exceptions: FALSE
  109. :use_test_preprocessor: TRUE
  110. :use_auxiliary_dependencies: TRUE
  111. :build_root: build
  112. # :release_build: TRUE
  113. :test_file_prefix: test_
  114. :which_ceedling: gem
  115. :ceedling_version: 0.31.1
  116. :default_tasks:
  117. - test:all
  118. #:test_build:
  119. # :use_assembly: TRUE
  120. #:release_build:
  121. # :output: MyApp.out
  122. # :use_assembly: FALSE
  123. :environment:
  124. :extension:
  125. :executable: .out
  126. :paths:
  127. :test:
  128. - +:test/**
  129. - -:test/support
  130. :source:
  131. - src/**
  132. :support:
  133. - test/support
  134. :libraries: []
  135. :defines:
  136. # in order to add common defines:
  137. # 1) remove the trailing [] from the :common: section
  138. # 2) add entries to the :common: section (e.g. :test: has TEST defined)
  139. :common: &common_defines []
  140. :test:
  141. - *common_defines
  142. - TEST
  143. :test_preprocess:
  144. - *common_defines
  145. - TEST
  146. :cmock:
  147. :mock_prefix: mock_
  148. :when_no_prototypes: :warn
  149. :enforce_strict_ordering: TRUE
  150. :plugins:
  151. - :ignore
  152. - :callback
  153. :treat_as:
  154. uint8: HEX8
  155. uint16: HEX16
  156. uint32: UINT32
  157. int8: INT8
  158. bool: UINT8
  159. # Add -gcov to the plugins list to make sure of the gcov plugin
  160. # You will need to have gcov and gcovr both installed to make it work.
  161. # For more information on these options, see docs in plugins/gcov
  162. :gcov:
  163. :utilities:
  164. -gcovr
  165. :reports:
  166. - HtmlDetailed
  167. :gcovr:
  168. :html_artifact_filename: my-project name
  169. :html_title: my-project name
  170. :html_medium_threshold: 75
  171. :html_high_threshold: 90
  172. #:tools:
  173. # Ceedling defaults to using gcc for compiling, linking, etc.
  174. # As [:tools] is blank, gcc will be used (so long as it's in your system path)
  175. # See documentation to configure a given toolchain for use
  176. # LIBRARIES
  177. # These libraries are automatically injected into the build process. Those specified as
  178. # common will be used in all types of builds. Otherwise, libraries can be injected in just
  179. # tests or releases. These options are MERGED with the options in supplemental yaml files.
  180. :libraries:
  181. :placement: :end
  182. :flag: "-l${1}"
  183. :path_flag: "-L ${1}"
  184. :system: [] # for example, you might list 'm' to grab the math library
  185. :test: []
  186. :release: []
  187. :plugins:
  188. :load_paths:
  189. - "#{Ceedling.load_path}"
  190. :enabled:
  191. - stdout_pretty_tests_report
  192. - module_generator
  193. - xml_tests_report
  194. - gcov
  195. ...