class
Crowbar::Minimizer::Reducer
- Crowbar::Minimizer::Reducer
- Reference
- Object
Overview
Anomaly-preserving test case minimizer and delta debugger. Employs hierarchical delta debugging (bisection chunk slicing, line trimming, and byte simplification) while strictly preserving syntax anomalies such as duplicate keys, malformed grammar boundaries, and protocol discrepancies.
Defined in:
crowbar/minimizer/reducer.crConstructors
Instance Method Summary
- #command : String | Nil
- #command=(command : String | Nil)
- #match_regex : Regex | Nil
- #match_regex=(match_regex : Regex | Nil)
- #predicate : Proc(Buffer, Bool) | Nil
- #predicate=(predicate : Proc(Buffer, Bool) | Nil)
- #progress_callback : Proc(Int32, Int32, Int32, Nil) | Nil
- #progress_callback=(progress_callback : Proc(Int32, Int32, Int32, Nil) | Nil)
-
#reduce(input : Buffer) : Buffer
Core reduction loop: reduces input buffer down to minimal reproducer
-
#test_candidate(candidate : Buffer) : Bool
Tests whether a candidate buffer still reproduces the failure predicate
- #timeout_ms : Int32
- #timeout_ms=(timeout_ms : Int32)
Constructor Detail
def self.new(command : String | Nil = nil, predicate : Proc(Buffer, Bool) | Nil = nil, match_regex : Regex | Nil = nil, timeout_ms : Int32 = 1000, progress_callback : Proc(Int32, Int32, Int32, Nil) | Nil = nil)
#
Instance Method Detail
Core reduction loop: reduces input buffer down to minimal reproducer
Tests whether a candidate buffer still reproduces the failure predicate