Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
build
10 changes: 10 additions & 0 deletions makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
test:
cd test/infrastructure && ceedling test:all

clean-test:
rm -rf build/test/*

clean-all:
rm -rf build/*

.PHONY: all test clean
File renamed without changes.
2 changes: 1 addition & 1 deletion FIFO.h → src/FIFO.h
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ extern "C" {
* structure that contains the buffer information (fifo_t). NULL is returned if
* something fails.
*/
fifo_t fifo_create(uint16_t count, uint16_t size);
fifo_t fifo_create(uint16_t count, size_t size);

/**
* @brief Creates a statically allocated FIFO buffer
Expand Down
3 changes: 3 additions & 0 deletions test/infrastructure/ceedling
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#!/bin/bash

ruby vendor/ceedling/bin/ceedling $*
88 changes: 88 additions & 0 deletions test/infrastructure/project.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
---

# 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/test
# :release_build: TRUE
:test_file_prefix: test_
:which_ceedling: vendor/ceedling
:default_tasks:
- test:all

#:release_build:
# :output: MyApp.out
# :use_assembly: FALSE

:environment:

:extension:
:executable: .out

:paths:
:test:
- +:../tests/**
:source:
- ../../src/**

: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)
:commmon: &common_defines []
:test:
- *common_defines
- TEST
:test_preprocess:
- *common_defines
- TEST

:cmock:
: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

:gcov:
:html_report_type: basic

#: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
...
Loading