2024 State of Clojure Survey中分享您的想法!

欢迎!请参阅关于页面获取更多关于它如何运作的信息。

0
test.check
生成器 {{neg-int}} 和 {{pos-int}} 生成 {{0}},这令人困惑,因为 {{(= (pos? 0} (neg? 0) false)}}。建议将 {{s-pos-int}} 和 {{s-neg-int}} 分别改为 {{pos-int}} 和 {{neg-int}},并替换当前的 {{neg-int}} 和 {{pos-int}}。新的名字建议包括 {{non-x-int}} 和 {{not-x-int}}。

[原始问题|https://github.com/reiddraper/simple-check/issues/46]

3 个答案

0

由:gshayban

`
user> (clojure.spec.gen.alpha/sample (clojure.spec.alpha/gen pos-int?))
(1 1 1 4 2 4 31 1 8 4)

user> (clojure.test.check.generators/sample clojure.test.check.generators/pos-int)
(0 0 1 1 0 5 1 2 1 4)
`

使用此生成器的 clojure.spec 用户从未看到过零

0

由:gfredericks

我认为 {{pos-int}} 和 {{neg-int}} 应该被弃用(由于令人困惑的命名),并且可能不会替换。{{pos-int}} 只是 {{nat}},而 {{neg-int}} 是一个容易自己实现的奇怪分布。

我想要重新思考一组整数生成器,但是不确定那会是什么样子,但我知道肯定不会涉及这两个(因此弃用它们是安全的)。

0
参考: https://clojure.atlassian.net/browse/TCHECK-2(由 hypirion 报告)
...