I eine Funktion mit der folgenden Art Signatur habenHaskell Quick Check erzeugt Zufallsdaten für die Funktion mit vielen Eingangsvariablen
rndListIndex :: Double -> Double -> Double -> Double
rndListIndex maxIdx r1 r2 = …
- der erste Eingang ein Wert kommt aus einer
nicht negativenstreng positiven ganzen Zahl sein sollte, - ist der zweite und dritte Eingang erforderlich innerhalb des geschlossenen Intervalls [0.0,1.0] sein, da sonst die Funktion macht keinen Sinn
die Funktion hat die Eigenschaft,
prop_alwaysLessThanMaxIdx idx r1 r2 = (rndListIndex idx r1 r2 <= idx)
wie kann ich zufällige Daten für maxIdx
und r1
, r2
separat erzeugen; Ich kenne die Funktion choose
aber weiß nicht, wie man es mit mehr als einer Eingabevariablen benutzt.
Für jetzt habe ich die Eigenschaft mit festen idx
getestet, die nicht die Art ist, wie es getestet werden sollte.
Kann der erste Wert 0 sein? – bennofs
Nun, da ich daran denke nein sollte es nicht - ich werde die Frage bearbeiten. – epsilonhalbe