Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Core fuzz generation and tests of it #81

Merged
merged 7 commits into from
Apr 20, 2024

Conversation

prozacchiwawa
Copy link
Contributor

@prozacchiwawa prozacchiwawa commented Apr 17, 2024

This is a framework for accumulating arbitrary programs that fit some desired constraints or have desirable structure or properties. While it's possible to fuzz compilers with completely arbitrary programs, the vast majority of programs generated completely arbitrarily aren't meaningful enough to fully compile or fully execute.

This allows us to choose a middle ground where we can try to produce unexpected inputs for the compiler while ensuring

  • We can know that the program is compilable
  • We can force the program to exercise features under test
  • We can know what the program is supposed to do before executing it so we can compare the result

@coveralls
Copy link

coveralls commented Apr 17, 2024

Pull Request Test Coverage Report for Build 8744268851

Details

  • 111 of 117 (94.87%) changed or added relevant lines in 2 files are covered.
  • 8 unchanged lines in 1 file lost coverage.
  • Overall coverage increased (+0.04%) to 82.935%

Changes Missing Coverage Covered Lines Changed/Added Lines %
src/compiler/fuzz.rs 50 53 94.34%
src/compiler/sexp.rs 61 64 95.31%
Files with Coverage Reduction New Missed Lines %
src/compiler/sexp.rs 8 79.08%
Totals Coverage Status
Change from base Build 8742161930: 0.04%
Covered Lines: 14925
Relevant Lines: 17996

💛 - Coveralls

@prozacchiwawa prozacchiwawa merged commit 7eb0289 into base Apr 20, 2024
29 checks passed
@prozacchiwawa prozacchiwawa deleted the 20240417-add-core-fuzz-generator-code branch April 20, 2024 00:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants