• Ashley's avatar
    Move sr-arithmetic to a new crate and add in a fuzzer (#3799) · dccaf161
    Ashley authored
    
    
    * Split up sr_arithmetic.rs
    
    * Add some basic fuzzing
    
    * Add more tests
    
    * Add printing to fuzzing
    
    * Clean things up
    
    * Remove arbitrary
    
    * Remove comments
    
    * More cleaning, fix small error that was causing a panic
    
    * Add rational128
    
    * Remove old random tests
    
    * introduce panic
    
    * fuzzing should panic properly
    
    * Bit of cleanup
    
    * Add a test uncovered via fuzzing that fails!
    
    * Few small changes
    
    * Move sr-arithmetic to its own crate
    
    * Fix fuzzing
    
    * Got rid of fuzzer Cargo.lock
    
    * Added no_std
    
    * re-export assert_eq_error_rate
    
    * bump impl and spec version
    
    * re add convert into
    
    * Add an ignore to the test
    
    * Enabled benchmarking
    
    * Reindent
    
    * Clean up biguint fuzzer
    
    * Clean up biguint more
    
    * shuffle sr-primitives/traits about
    
    * Remove unused dependencies
    
    * Apply clippy suggestions
    
    * upgrade primitive-types versions
    
    * Run tests against num-bigint
    
    * Get rid of allocation in assert_biguints_eq
    
    * Add an optimisation to multiply_by_rational
    
    * rename parts_per_x -> per_things
    
    * Change fuzzer cargo.toml
    
    * Remove allocation from BigUint PartialEq impl
    
    * Remove accidental indentation
    
    * Renmove Lazy and Convert traits
    
    * Copy assert_eq_error_rate macro back to sr-primitives
    
    * Add documentation to fuzzers
    
    * fix sr-primitives assert_eq_error_rate
    
    * add cfg(test)
    
    * Update core/sr-arithmetic/src/traits.rs
    
    Co-Authored-By: default avatarKian Paimani <[email protected]>
    
    * Update core/sr-arithmetic/src/traits.rs
    
    Co-Authored-By: default avatarKian Paimani <[email protected]>
    
    * Update core/sr-arithmetic/fuzzer/src/biguint.rs
    
    Co-Authored-By: default avatarKian Paimani <[email protected]>
    
    * Allow rounding up in rational128
    
    * Make changes to biguint.rs
    
    * Update core/sr-arithmetic/src/traits.rs
    
    Co-Authored-By: default avatarKian Paimani <[email protected]>
    
    * Final touches
    
    * Convert to num_bigint::BigUint to compare
    
    * remove unused mut
    
    * more small changes
    
    * shuffle sr-primitives trait imports
    
    * more code review
    
    * move assert_eq_error_rate to lib.rs
    
    * Update core/sr-arithmetic/fuzzer/src/biguint.rs
    
    Co-Authored-By: default avatarBastian Köcher <[email protected]>
    
    * Get rid of S
    
    * Simplify rational128 honggfuzz link
    
    * Insignificantly change rational128 fuzzing code
    
    * Slightly tidy up some of the arithmetic logic
    
    * Get rid of sr_arithmetic again(?) and fix sr-primitives/weights
    
    * Apply updates to sr_arithmetic.rs to crate
    dccaf161