#lang scheme/base
(require scheme/contract
scheme/match
"check-combinator.ss"
"result.ss")
(define (check-successes? . results)
(ormap check-success? (apply check-all results)))
(define (check-no-problems? . results)
(not (apply check-problems? results)))
(define (check-problems? . results)
(ormap check-problem? (apply check-all results)))
(define (check-warnings? . results)
(ormap check-warning? (apply check-all results)))
(define (check-errors? . results)
(ormap check-error? (apply check-all results)))
(define (check-failures? . results)
(ormap check-failure? (apply check-all results)))
(define (check-fatals? . results)
(ormap check-fatal? (apply check-all results)))
(provide/contract
[check-successes? (->* () () #:rest (listof (listof check-result?)) boolean?)]
[check-no-problems? (->* () () #:rest (listof (listof check-result?)) boolean?)]
[check-problems? (->* () () #:rest (listof (listof check-result?)) boolean?)]
[check-warnings? (->* () () #:rest (listof (listof check-result?)) boolean?)]
[check-errors? (->* () () #:rest (listof (listof check-result?)) boolean?)]
[check-failures? (->* () () #:rest (listof (listof check-result?)) boolean?)]
[check-fatals? (->* () () #:rest (listof (listof check-result?)) boolean?)])