C library implementing various parts of Vieter.
 
 
 
Go to file
GreekStapler efbd9eaef9
ci/woodpecker/pr/woodpecker Pipeline is pending Details
fix: Somehow, test file changed line endings to CRLF. Changed it back to LF.
2023-01-25 23:55:04 +01:00
include refactor: Decided to not return char** in function that creates the package description after all, now returns char*. 2023-01-25 22:15:07 +01:00
src refactor: Add libarchive link to test compilation area of the Makefile. Created test units with xcursor-dmz as test package. 2023-01-25 23:32:50 +01:00
test fix: Somehow, test file changed line endings to CRLF. Changed it back to LF. 2023-01-25 23:55:04 +01:00
.clangd chore: add some more config files 2023-01-18 16:58:33 +01:00
.gitignore test: started porting cron tests 2023-01-18 13:59:10 +01:00
.woodpecker.yml chore: added woodpecker config 2023-01-18 17:04:45 +01:00
Makefile refactor: Add libarchive link to test compilation area of the Makefile. Created test units with xcursor-dmz as test package. 2023-01-25 23:32:50 +01:00
README.md test: add structure & framework for writing tests 2023-01-18 13:08:09 +01:00

README.md

libvieter

This library powers part of Vieter, most noteably the sections that can easily be implemented in C (or just parts I want to implement in C because it's fun).

The goal of this library is to be completely self-contained, meaning any required data structures have to be implemented as well. It can only depend on the C standard libraries.

Currently it contains the following:

  • Cron expression parser & next time calculator

Development

Compilation

Everything is handled by the provided Makefile. To compile the static library, simply run make.

Testing

This library uses Acutest for its tests. Tests should be placed in the test subdirectory, further divided into directories that correspond those in src. Test files should begin with test_, and their format should follow the expected format for Acutest.

To run the tests, simply run make test. If you wish to only run a specific test binary, you can find them in build/test.

compile_commands.json

Clangd requires a compile_commands.json to function properly. You can generate it using bear:

make clean
bear -- make
bear --append -- make build-test

This will create a compile_commands.json file in the current directory.