Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bhansconnect/roc-fuzz
Fuzz testing for Roc
https://github.com/bhansconnect/roc-fuzz
Last synced: 3 months ago
JSON representation
Fuzz testing for Roc
- Host: GitHub
- URL: https://github.com/bhansconnect/roc-fuzz
- Owner: bhansconnect
- License: bsd-3-clause
- Created: 2024-01-25T06:25:06.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-01-28T01:18:14.000Z (10 months ago)
- Last Synced: 2024-04-16T04:18:50.551Z (7 months ago)
- Language: C++
- Size: 6.14 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- roc-awesome - bhansconnect/roc-fuzz
README
# Roc Fuzz
The goal of this project is to make it easy for Roc programmers to write fuzz tests for their projects.
It is a a custom platform and does not support arbitrary tasks.
As such, it is just for testing pure roc code.Currently, it requires roc built from source on the `fuzz` branch.
Once the compiler is built, simply run targets with the `--fuzz` option.
Ok, that doesn't quite work yet.
If building locally, run as:
```
ROC_LINK_FLAGS="-lc++" roc run --linker=legacy --fuzz --prebuilt-platform app.roc
```If running from distribution, `--prebuilt-platform` can be omitted.
### Current TODOs
1. Exposes runs and max_total_time in fuzz and minimize.
1. Exposes control over jobs and dictionary.
1. Exposes shrink corpus command.
1. Expand arbitrary to all builtin types (also Arbitrary.raw to just get all of the bytes?).
1. Add other helpers like Arbitrary.choose.
1. Vendor and build for more architecture/os pairs.
1. If possible, think of a way to enable seeding the corpus.
1. Docs and tooling to make it awesome to use.