smessmer / binary-layout

The binary-layout library allows type-safe, inplace, zero-copy access to structured binary data. You define a custom data layout and give it a slice of binary data, and it will allow you to read and write the fields defined in the layout from the binary data without having to copy any of the data. It's similar to transmuting to/from a #[repr(packed)] struct, but much safer.
Apache License 2.0
66 stars 9 forks source link

Use Bolero in your tests #5

Open ckaran opened 2 years ago

ckaran commented 2 years ago

Have you heard of bolero? It's a fuzz testing framework that is designed to work within rust's test environment. I used it heavily on the code for my Ph.D., and it was remarkably efficient at turning up bugs. It may be useful for you as well.

smessmer commented 2 years ago

Looks interesting. I'm not familiar with it but if you want to set it up for our CI runs, I'll merge it.

ckaran commented 2 years ago

I tried to add bolero support over the weekend to see how difficult it would be, and rapidly realized that I'm going to have to spend some time thinking about how to add in support without causing headaches down the road. My plan is to get #6 in first (which should be fairly easy), and then really spend some time thinking about how to handle this feature request. I suspect that whenever I get the PR pulled together it will still require some effort to verify that it's doing the right thing in all cases.