Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Karsten Poeck
ansi-test
Commits
41aecc44
Commit
41aecc44
authored
Feb 11, 2004
by
pfdietz
Browse files
Added tests for sinh, cosh.
parent
94ef088b
Changes
3
Hide whitespace changes
Inline
Side-by-side
ansi-tests/cosh.lsp
0 → 100644
View file @
41aecc44
;-*- Mode: Lisp -*-
;;;; Author: Paul Dietz
;;;; Created: Wed Feb 11 06:54:15 2004
;;;; Contains: Tests of COSH
(in-package :cl-test)
(deftest cosh.1
(let ((result (cosh 0)))
(or (eqlt result 1)
(eqlt result 1.0)))
t)
(deftest cosh.2
(loop for type in '(short-float single-float double-float long-float)
for zero = (coerce 0 type)
for one = (coerce 1 type)
unless (equal (multiple-value-list (cosh zero))
(list one))
collect type)
nil)
(deftest cosh.3
(loop for type in '(short-float single-float double-float long-float)
for zero = (coerce 0 `(complex ,type))
for one = (coerce 1 `(complex ,type))
unless (equal (multiple-value-list (cosh zero))
(list one))
collect type)
nil)
(deftest cosh.4
(loop for den = (1+ (random 10000))
for num = (random (* 10 den))
for x = (/ num den)
for rlist = (multiple-value-list (cosh x))
for y = (car rlist)
repeat 1000
unless (and (null (cdr rlist))
(numberp y))
collect (list x rlist))
nil)
(deftest cosh.5
(loop for type in '(short-float single-float double-float long-float)
nconc
(loop
for x = (- (random (coerce 20 type)) 10)
for rlist = (multiple-value-list (cosh x))
for y = (car rlist)
repeat 1000
unless (and (null (cdr rlist))
(typep y type))
collect (list x rlist)))
nil)
(deftest cosh.6
(loop for type in '(short-float single-float double-float long-float)
nconc
(loop
for x1 = (- (random (coerce 20 type)) 10)
for x2 = (- (random (coerce 20 type)) 10)
for rlist = (multiple-value-list (cosh (complex x1 x2)))
for y = (car rlist)
repeat 1000
unless (and (null (cdr rlist))
(typep y `(complex ,type)))
collect (list x rlist)))
nil)
;;; FIXME
;;; Add accuracy tests here
;;; Error tests
(deftest cosh.error.1
(signals-error (cosh) program-error)
t)
(deftest cosh.error.2
(signals-error (cosh 1.0 1.0) program-error)
t)
(deftest cosh.error.3
(loop for x in *mini-universe*
unless (or (numberp x)
(eval `(signals-error (cosh ',x) type-error)))
collect x)
nil)
ansi-tests/load-numbers.lsp
View file @
41aecc44
...
...
@@ -31,6 +31,10 @@
(load "acos.lsp")
(load "atan.lsp")
(load "sinh.lsp")
(load "cosh.lsp")
(load "times.lsp")
(load "plus.lsp")
(load "minus.lsp")
...
...
ansi-tests/sinh.lsp
0 → 100644
View file @
41aecc44
;-*- Mode: Lisp -*-
;;;; Author: Paul Dietz
;;;; Created: Wed Feb 11 06:29:51 2004
;;;; Contains: Tests for SINH
(in-package :cl-test)
(deftest sinh.1
(let ((result (sinh 0)))
(or (eqlt result 0)
(eqlt result 0.0)))
t)
(deftest sinh.2
(loop for type in '(short-float single-float double-float long-float)
for zero = (coerce 0 type)
unless (equal (multiple-value-list (sinh zero))
(list zero))
collect type)
nil)
(deftest sinh.3
(loop for type in '(short-float single-float double-float long-float)
for zero = (coerce 0 `(complex ,type))
unless (equal (multiple-value-list (sinh zero))
(list zero))
collect type)
nil)
(deftest sinh.4
(loop for den = (1+ (random 10000))
for num = (random (* 10 den))
for x = (/ num den)
for rlist = (multiple-value-list (sinh x))
for y = (car rlist)
repeat 1000
unless (and (null (cdr rlist))
(numberp y))
collect (list x rlist))
nil)
(deftest sinh.5
(loop for type in '(short-float single-float double-float long-float)
nconc
(loop
for x = (- (random (coerce 20 type)) 10)
for rlist = (multiple-value-list (sinh x))
for y = (car rlist)
repeat 1000
unless (and (null (cdr rlist))
(typep y type))
collect (list x rlist)))
nil)
(deftest sinh.6
(loop for type in '(short-float single-float double-float long-float)
nconc
(loop
for x1 = (- (random (coerce 20 type)) 10)
for x2 = (- (random (coerce 20 type)) 10)
for rlist = (multiple-value-list (sinh (complex x1 x2)))
for y = (car rlist)
repeat 1000
unless (and (null (cdr rlist))
(typep y `(complex ,type)))
collect (list x rlist)))
nil)
;;; FIXME
;;; Add accuracy tests here
;;; Error tests
(deftest sinh.error.1
(signals-error (sinh) program-error)
t)
(deftest sinh.error.2
(signals-error (sinh 1.0 1.0) program-error)
t)
(deftest sinh.error.3
(loop for x in *mini-universe*
unless (or (numberp x)
(eval `(signals-error (sinh ',x) type-error)))
collect x)
nil)
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment