146 lines
3.3 KiB
YAML
146 lines
3.3 KiB
YAML
---
|
|
|
|
# Notes:
|
|
# Sample project C code is not presently written to produce a release artifact.
|
|
# As such, release build options are disabled.
|
|
# This sample, therefore, only demonstrates running a collection of unit tests.
|
|
|
|
:project:
|
|
:use_exceptions: FALSE
|
|
:use_test_preprocessor: TRUE
|
|
:use_auxiliary_dependencies: TRUE
|
|
:build_root: build
|
|
# :release_build: TRUE
|
|
:test_file_prefix: test_
|
|
:which_ceedling: gem
|
|
:ceedling_version: 0.31.0
|
|
:default_tasks:
|
|
- test:all
|
|
|
|
#:test_build:
|
|
# :use_assembly: TRUE
|
|
|
|
#:release_build:
|
|
# :output: MyApp.out
|
|
# :use_assembly: FALSE
|
|
|
|
:environment:
|
|
|
|
:extension:
|
|
:executable: .out
|
|
|
|
:paths:
|
|
:test:
|
|
- +:test/**
|
|
- -:test/support
|
|
:source:
|
|
- Core/**
|
|
- Drivers/**
|
|
:support:
|
|
- test/support
|
|
:libraries: []
|
|
|
|
:defines:
|
|
# in order to add common defines:
|
|
# 1) remove the trailing [] from the :common: section
|
|
# 2) add entries to the :common: section (e.g. :test: has TEST defined)
|
|
:common: &common_defines
|
|
- STM32F303xE
|
|
# - CMOCK_MEM_PTR_AS_INT=uint32_t
|
|
:test:
|
|
- *common_defines
|
|
- TEST
|
|
:test_preprocess:
|
|
- *common_defines
|
|
- TEST
|
|
|
|
:cmock:
|
|
:includes:
|
|
# - Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_dma.h
|
|
- /home/bartool/Public/c_test/test2/Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_dma.h
|
|
:mock_prefix: mock_
|
|
:when_no_prototypes: :warn
|
|
:enforce_strict_ordering: TRUE
|
|
:plugins:
|
|
- :ignore
|
|
- :callback
|
|
:treat_as:
|
|
# uint8: HEX8
|
|
# uint16: HEX16
|
|
# uint32: UINT32
|
|
# int8: INT8
|
|
bool: UINT8
|
|
char: HEX8
|
|
int8_t: INT8
|
|
int16_t: INT16
|
|
int32_t: INT
|
|
INT8_T: INT8
|
|
INT16_T: INT16
|
|
INT32_T: INT
|
|
unsigned int: HEX32
|
|
unsigned long': HEX32
|
|
uint32: HEX32
|
|
uint32_t: HEX32
|
|
UINT32: HEX32
|
|
UINT32_T: HEX32
|
|
void*: HEX8_ARRAY
|
|
unsigned short: HEX16
|
|
uint16: HEX16
|
|
uint16_t: HEX16
|
|
UINT16: HEX16
|
|
UINT16_T: HEX16
|
|
unsigned char: HEX8
|
|
uint8: HEX8
|
|
uint8_t: HEX8
|
|
UINT8: HEX8
|
|
UINT8_T: HEX8
|
|
# char*: STRING
|
|
# pCHAR: STRING
|
|
# cstring: STRING
|
|
# CSTRING: STRING
|
|
# float: FLOAT
|
|
# double: FLOAT
|
|
|
|
|
|
# Add -gcov to the plugins list to make sure of the gcov plugin
|
|
# You will need to have gcov and gcovr both installed to make it work.
|
|
# For more information on these options, see docs in plugins/gcov
|
|
:gcov:
|
|
:reports:
|
|
- HtmlDetailed
|
|
:gcovr:
|
|
:html_medium_threshold: 75
|
|
:html_high_threshold: 90
|
|
|
|
:flags:
|
|
:test:
|
|
:compile:
|
|
:main:
|
|
- -m32
|
|
#:tools:
|
|
# Ceedling defaults to using gcc for compiling, linking, etc.
|
|
# As [:tools] is blank, gcc will be used (so long as it's in your system path)
|
|
# See documentation to configure a given toolchain for use
|
|
|
|
# LIBRARIES
|
|
# These libraries are automatically injected into the build process. Those specified as
|
|
# common will be used in all types of builds. Otherwise, libraries can be injected in just
|
|
# tests or releases. These options are MERGED with the options in supplemental yaml files.
|
|
:libraries:
|
|
:placement: :end
|
|
:flag: "-l${1}"
|
|
:path_flag: "-L ${1}"
|
|
:system: [] # for example, you might list 'm' to grab the math library
|
|
:test: []
|
|
:release: []
|
|
|
|
:plugins:
|
|
:load_paths:
|
|
- "#{Ceedling.load_path}"
|
|
:enabled:
|
|
- stdout_pretty_tests_report
|
|
- module_generator
|
|
- raw_output_report
|
|
- xml_tests_report
|
|
...
|