如何使用test.check编写生成器以生成alpha字符串



test.check有一个内置的生成器gen/string-alphanumeric,但它没有gen/string alpha。如何制作一个生成器,使字符串只由字母组成,而不由数字组成?

您可以将gen/char-alpha与gen/fmap一起使用来生成字符串。

(gen/fmap clojure.string/join (gen/vector gen/char-alpha))

如果你需要经常使用这个,我建议你绑定它。例如:

(def gen-string-alpha
(gen/fmap clojure.string/join (gen/vector gen/char-alpha)))

test.chuck有一个生成器,来自regex的字符串,它将被证明在生成与任何所需正则表达式匹配的字符串时非常有用。

最新更新