Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/siposattila/testme
C++ testing framework based on the idea of runnable requirements.
https://github.com/siposattila/testme
cpp cpp20 runnable-specification test test-automation test-framework testing tree-sitter
Last synced: 1 day ago
JSON representation
C++ testing framework based on the idea of runnable requirements.
- Host: GitHub
- URL: https://github.com/siposattila/testme
- Owner: Siposattila
- License: mit
- Created: 2024-06-21T20:50:14.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2025-01-11T17:53:34.000Z (4 days ago)
- Last Synced: 2025-01-11T18:34:24.062Z (4 days ago)
- Topics: cpp, cpp20, runnable-specification, test, test-automation, test-framework, testing, tree-sitter
- Language: C++
- Homepage:
- Size: 30.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# How to build
The project is using `clang 18.1.3`.
You will need cmake. To be exact atleast `cmake version 3.22`.You need to use `pre-commit` for this project.
Before you are trying to use pre-commit you need to make sure that you have these installed:
- `clang-format`On linux you can just pretty much use `apt` to install them.
On how to install and use `pre-commit` please refer to the [pre-commit section](#pre-commit).
```shell
cmake -B build
cd build
make
```Thats it!
After you change something just run `make` in the build folder.
# How to test
When you build with `make` then the tests are built as well.This project is using [gtest](https://github.com/google/googletest) v1.15.2.
After the build is complete then you just run `ctest`.
# How to run
After following the [how to build section](#how-to-build) you can run it with `./TestMe`.# Pre-commit
To provide a good quality code for the project it is mandatory to use [pre-commit](https://pre-commit.com).To install you need to have python on your system. After that just run `pip install pre-commit`.
Before you are all set with pre-commit you need to install the hooks in your local repo.
You can do that with this command `pre-commit install`.Good! Now you are all set from now on pre-commit will automatically run every time when you are trying to make a commit.
You can always check with pre-commit that your changes will fail or not before making a commit.
Just run: `pre-commit`# Tree-sitter
This project is using [tree-sitter](https://github.com/tree-sitter/tree-sitter) v0.24.4.## Tree-sitter grammar
- [tree-sitter-cpp](https://github.com/tree-sitter/tree-sitter-cpp) v0.23.4
- [tree-sitter-java](https://github.com/tree-sitter/tree-sitter-java) v0.23.4
- [tree-sitter-c-sharp](https://github.com/tree-sitter/tree-sitter-c-sharp) v0.23.1