(include "#.scm")

(check-eqv? (##flodd? +inf.0) #f)
(check-eqv? (##flodd? -inf.0) #f)
(check-eqv? (##flodd? -0.0)   #f)
(check-eqv? (##flodd? 0.0)    #f)
(check-eqv? (##flodd? 1.5)    #f)
(check-eqv? (##flodd? -1.5)   #f)
(check-eqv? (##flodd? 2.0)    #f)
(check-eqv? (##flodd? -2.0)   #f)
(check-eqv? (##flodd? 3.0)    #t)
(check-eqv? (##flodd? -3.0)   #t)

(check-eqv? (flodd? +inf.0) #f)
(check-eqv? (flodd? -inf.0) #f)
(check-eqv? (flodd? -0.0)   #f)
(check-eqv? (flodd? 0.0)    #f)
(check-eqv? (flodd? 1.5)    #f)
(check-eqv? (flodd? -1.5)   #f)
(check-eqv? (flodd? 2.0)    #f)
(check-eqv? (flodd? -2.0)   #f)
(check-eqv? (flodd? 3.0)    #t)
(check-eqv? (flodd? -3.0)   #t)

(check-tail-exn wrong-number-of-arguments-exception? (lambda () (flodd?)))
(check-tail-exn wrong-number-of-arguments-exception? (lambda () (flodd? 1.0 2.0)))

(check-tail-exn type-exception? (lambda () (flodd? 1)))
(check-tail-exn type-exception? (lambda () (flodd? 1/2)))
