我寫的加密和解密函數用下面的函數類型:Haskell的快速檢查 - 抓鬥和修改生成的參數
encrypt::[Char]->[Char]->[Char]
decrypt::[Char]->[Char]->[Char]
這些功能是手動測試了與正常工作。唯一的是他們只用大寫字母。
我還寫了一個測試屬性函數,它通過上述2個函數加密一個mssg
並解密其加密。然後它將解密與mssg
進行比較,以確保所有工作正常。 m
代表mssg,k
代表鍵。
test::[Char]->[Char]->Bool
test [] [] = True
test m k = m == (decrypt (encrypt m k) k)
現在我想在測試中使用quickCheck來隨機生成消息和密鑰。這是爲了自動化測試。
main = print $ quickCheck test
但是,quickCheck也會產生小寫字母,我也不想這樣。我希望能夠修改quickCheck生成的參數,只包含大寫字母。我怎樣才能做到這一點?
這與[此問題](https://stackoverflow.com/questions/30428408/haskell-quickcheck-generate-non-upper)? – Carsten
沒有。我與這個問題無關。 –
也許你有相同的老師? - 無論如何 - Joes的回答並不是那麼糟糕) – Carsten