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

Implement AST-based regular expression fuzz tests #4504

Merged
merged 12 commits into from
Jan 22, 2022

Conversation

andygrove
Copy link
Contributor

@andygrove andygrove commented Jan 11, 2022

Signed-off-by: Andy Grove andygrove@nvidia.com

This PR adds a new approach to fuzz testing where we randomly create RegExp ASTs and then convert them to RegExp strings.

This testing approach has found many issues that the existing fuzz tests did not catch. Some of the generators are currently disabled due to known issues and GitHub references are provided in the code.

Signed-off-by: Andy Grove <andygrove@nvidia.com>
@andygrove andygrove added the test Only impacts tests label Jan 11, 2022
@andygrove andygrove added this to the Jan 10 - Jan 28 milestone Jan 11, 2022
@andygrove andygrove self-assigned this Jan 11, 2022
Signed-off-by: Andy Grove <andygrove@nvidia.com>
Signed-off-by: Andy Grove <andygrove@nvidia.com>
Signed-off-by: Andy Grove <andygrove@nvidia.com>
Signed-off-by: Andy Grove <andygrove@nvidia.com>
@andygrove andygrove changed the base branch from branch-22.02 to branch-22.04 January 19, 2022 20:08
Signed-off-by: Andy Grove <andygrove@nvidia.com>
Signed-off-by: Andy Grove <andygrove@nvidia.com>
@andygrove andygrove marked this pull request as ready for review January 21, 2022 19:13
@andygrove andygrove changed the title WIP: Regexp AST fuzz test Implement AST-based regular expression fuzz tests Jan 21, 2022
@jlowe
Copy link
Member

jlowe commented Jan 21, 2022

build

@andygrove andygrove merged commit 4349acd into NVIDIA:branch-22.04 Jan 22, 2022
@andygrove andygrove deleted the regexp-ast-fuzz-tests branch January 22, 2022 00:00
@andygrove andygrove linked an issue Jan 24, 2022 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
test Only impacts tests
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[FEA] Improve regexp testing with regexp-aware fuzzer
2 participants