Test.Distribution
Distribution
            
                type alias ExpectedDistribution  =
                	ExpectedDistribution            
            
                
        Your input distribution requirement for the fuzzer used in a test.
For example, "this test shouldn't ever receive strings of length < 3 as an input" or "at least 30% of the test input trees should be balanced".
            
                atLeast :
                	Float -> ExpectedDistribution            
            
                
        A requirement that a given value class should happen at least N% of the time in a given test.
The example below says that at least 30% of the fuzz test inputs should be multiples of 3.
fuzzWith
    { runs = 10000
    , distribution =
        expectDistribution
            [ ( atLeast 30, "multiple of 3", \n -> (n |> modBy 3) == 0 )
            ]
    }
            
        
            
                zero :
                	ExpectedDistribution            
            
                
        A requirement that a given value class should never happen in a given test.
            
                moreThanZero :
                	ExpectedDistribution            
            
                
        A requirement that a given value class should happen at least once in a given test.
            
                type DistributionReport 
                
        = NoDistribution 
                 | DistributionToReport ({ distributionCount : Dict (Array String) Int, runsElapsed : Int })
                 | DistributionCheckSucceeded ({ distributionCount : Dict (Array String) Int, runsElapsed : Int })
                 | DistributionCheckFailed ({ distributionCount : Dict (Array String) Int, runsElapsed : Int, badLabel : String, badLabelPercentage : Float, expectedDistribution : String })
            
            
                A result of a distribution check.
Get it from your Expectation with Test.Runner.getDistributionReport.
            
                distributionReportTable :
                	
			
            
            
                
    { a | runsElapsed : Int, distributionCount : Dict (Array String) Int } -> String
	Prettyprints the record inside DistributionReport into a table with histograms.