1.12 Testfälle
Dieser Testfall überprüft, ob der erste expr den gleichen
Wert hat wie der zweite expr, wobei das zweite expr
meist ein Literal ist.
Wie
check-expect, aber mit einem weiteren Ausdruck,
der als Wert eine Zahl
delta hat. Der Testfall überprüft, daß jede Zahl im Resultat
des ersten
expr maximal um
delta
von der entsprechenden Zahl im zweiten
expr abweicht.
Ähnlich wie
check-expect: Der Testfall überprüft, daß das Resultat
des ersten Operanden gleich dem Wert eines der folgenden Operanden ist.
Ähnlich wie
check-expect: Der Testfall überprüft, ob der Wert
des Ausdrucks
expr vom Prädikat
pred erfüllt wird -
das bedeutet, daß die Prozedur
pred den Wert
#t
liefert, wenn sie auf den Wert von
expr angewendet wird.
Der folgende Test wird also bestanden:
Der folgende Test hingegen wird hingegen nicht bestanden:
(check-satisfied 1 even?)
Ähnlich wie
check-expect: Alle drei Operanden müssen
Zahlen sein. Der Testfall überprüft, ob die erste Zahl zwischen der
zweiten und der dritten liegt (inklusive).
Dieser Testfall überprüft, ob der erste expr einen Fehler produziert,
wobei die Fehlermeldung der Zeichenkette entspricht, die der Wert des zweiten
expr ist.
Dieser Testfall überprüft experimentell, ob die
Eigenschaft
expr erfüllt ist. Dazu werden zufällige Werte für die mit
for-all quantifizierten Variablen eingesetzt: Damit wird
überprüft, ob die Bedingung gilt.
Wichtig: check-property funktioniert nur für
Eigenschaften, bei denen aus den Signaturen sinnvoll Werte generiert
werden können. Dies ist für die meisten eingebauten Signaturen der
Fall, aber nicht für Signaturvariablen und Signaturen, die mit
predicate oder define-record-procedures definiert
wurden - wohl aber für Signaturen, die mit dem durch
define-record-procedures-parametric definierten
Signaturkonstruktor erzeugt wurden.