Test.Runner.Failure
The reason a test failed.
            
                type Reason 
                
        = Custom 
                 | Equality ({ expected : String, actual : String })
                 | Comparison ({ expected : String, actual : String })
                 | ArrayDiff ({ expected : Array String, actual : Array String })
                 | CollectionDiff ({ expected : String, actual : String, extra : Array String, missing : Array String })
                 | TODO 
                 | Invalid InvalidReason
            
            
                The reason a test failed.
Test runners can use this to provide nice output, e.g. by doing diffs on the
two parts of an Expect.equal failure.
            
                type InvalidReason 
                
    = EmptyArray 
                 | NonpositiveFuzzCount 
                 | InvalidFuzzer 
                 | BadDescription 
                 | DuplicatedName 
                 | DistributionInsufficient 
                 | DistributionBug 
            
            
                The reason a test run was invalid.
Test runners should report these to the user in whatever format is appropriate.