Template for C TDD that uses the cpputest framework/test harness. This template uses Makefiles instead of CMake
Go to file Use this template
jakeg00dwin d374fff42e Added a toolchain cmake file that targets the "riscv-none-elf" tripple. 2024-12-04 19:51:22 -08:00
.template_files fixed issue with external linkage of "C" files 2024-03-20 16:10:10 -07:00
build Added empty dirs and hidden placeholders 2024-03-06 20:57:41 -08:00
cpputest@c3625dc668 added cpputest as a git-submodule 2024-03-06 21:29:39 -08:00
docs Added empty dirs and hidden placeholders 2024-03-06 20:57:41 -08:00
inc Added and included the "inc" directory in the project root. Also added in line to include the mocks dir 2024-06-14 13:38:04 -07:00
mocks added an empty cmake file into mocks 2024-03-15 14:23:11 -07:00
src added the exexcutable target main 2024-03-15 13:46:33 -07:00
tests Added comment for automation use. 2024-03-18 19:30:40 -07:00
.gitignore added more files to ignore 2024-03-12 22:38:22 -07:00
.gitmodules added cpputest as a git-submodule 2024-03-06 21:29:39 -08:00
CMakeLists.txt Added and included the "inc" directory in the project root. Also added in line to include the mocks dir 2024-06-14 13:38:04 -07:00
Doxyfile added my doxyfile for doxygen 2024-03-06 21:06:13 -08:00
README.md Added more details on dependencies. 2024-12-04 19:37:47 -08:00
ch32v20x-toolchain.cmake Added a toolchain cmake file that targets the "riscv-none-elf" tripple. 2024-12-04 19:51:22 -08:00
compile_commands.json added the compile commands symlink 2024-03-12 22:39:28 -07:00
otto.sh updated to use the fancy regex sed flag 2024-03-20 14:10:05 -07:00
setup.sh updated the build_cpputest() shell function 2024-03-06 21:47:04 -08:00

README.md

CH32V20X TDD template

Description

This is a TDD focused template that uses the cpputest testing harness and CMAKE for the build system. The build system and testing is held together with the use of the otto.sh script.

Dependencies

  • CMAKE >= 3.20
  • CppUTest >= 3.8
  • Bash/Sh shell

Hardware Specific

Given this template targets the whole range of CH32V20X chips you will want to define their memory layout to reflect the chip you have chosen.

Using the template

Setting up dependencies

Running Tests

echo "1" | ./otto.sh

Building Binaries

Flashing Micro-Controller