summaryrefslogtreecommitdiffstats
path: root/tinyusb/test/project.yml
diff options
context:
space:
mode:
Diffstat (limited to 'tinyusb/test/project.yml')
-rwxr-xr-xtinyusb/test/project.yml106
1 files changed, 106 insertions, 0 deletions
diff --git a/tinyusb/test/project.yml b/tinyusb/test/project.yml
new file mode 100755
index 00000000..dc4a9cb2
--- /dev/null
+++ b/tinyusb/test/project.yml
@@ -0,0 +1,106 @@
+---
+
+# 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: TRUE
+ :use_mocks: TRUE
+ :use_test_preprocessor: TRUE
+ :use_auxiliary_dependencies: TRUE
+ :use_deep_dependencies: TRUE
+ :build_root: _build
+# :release_build: TRUE
+ :test_file_prefix: test_
+ :which_ceedling: vendor/ceedling
+ :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:
+ - ../src/**
+ :support:
+ - test/support
+
+: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
+ - _UNITY_TEST_
+ :test:
+ - *common_defines
+ :test_preprocess:
+ - *common_defines
+
+:cmock:
+ :mock_prefix: mock_
+ :when_no_prototypes: :warn
+ :enforce_strict_ordering: TRUE
+ :plugins:
+ - :ignore
+ - :ignore_arg
+ - :return_thru_ptr
+ - :callback
+ - :array
+ :treat_as:
+ uint8: HEX8
+ uint16: HEX16
+ uint32: UINT32
+ int8: INT8
+ bool: UINT8
+
+# 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:
+ :html_report: TRUE
+ :html_report_type: detailed
+ :html_medium_threshold: 75
+ :html_high_threshold: 90
+ :xml_report: FALSE
+
+#: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: "${1}" # or "-L ${1}" for example
+ :common: &common_libraries []
+ :test:
+ - *common_libraries
+ :release:
+ - *common_libraries
+
+:plugins:
+ :load_paths:
+ - vendor/ceedling/plugins
+ :enabled:
+ - stdout_pretty_tests_report
+ - module_generator
+ - raw_output_report
+ - colour_report
+...