All Projects → ccup → cctest

ccup / cctest

Licence: Apache-2.0 license
cctest is a simple, practical, and scalable xUnit Test Framework in Modern C++

Programming Languages

C++
36643 projects - #6 most used programming language
CMake
9771 projects
Starlark
911 projects
c
50402 projects - #5 most used programming language
shell
77523 projects
NASL
115 projects

cctest: Modern C++ xUnit Test Framework

cctest is a simple, practical, and scalable xUnit Test Framework in Modern C++.

C/C++ are different languages from most modern ones. Writing tests for them has some very specific challenges. Therefore, simply clone ideas from xUnit frameworks for other languages does not work the best. Programmers have to suffer accidental complexities brought by most of existing frameworks.

cctest is designed for simplifying efforts of programers, in terms of development, maintenance, flexibility of test management, build & run-time strategy, and others.

Install

$ curl -fsSL https://raw.github.com/ccup/cctest/master/install.sh | sh

Bazel

Build

$ bazel build //ctest
$ bazel build //ctest:main

Test

$ bazel test //spec/...

CMake

Build

$ mkdir build
$ cd build
$ cmake .. 
$ make

If you don't want to run test cases, you should close "CCTEST_RUN_TESTS" option.

$ cmake -DCCTEST_RUN_TESTS=off ..

Test

$ make
$ make test

Install

$ sudo make install

Uninstall

$ cat install_manifest.txt | xargs echo sudo rm | sh

Docker

You can build develop image based ubuntu 18.04.

$ sudo docker build -t ubuntu18.04-dev:1.0 -f dockerfiles/Dockerfile.devel .

And start docker container.

$ sudo docker run -v `pwd`:/root/cctest -it --name cctest ubuntu18.04-dev:1.0
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].