Skip to content

Commit 0432ddd

Browse files
committed
Merge pull request #448 from thomasmulvaney/fix-rand-int
fixes #446
2 parents 4c9bf17 + 721cdf1 commit 0432ddd

2 files changed

Lines changed: 6 additions & 2 deletions

File tree

pixie/stdlib.pxi

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -549,7 +549,9 @@ returns true"
549549
(defn rand-int
550550
{:doc "random integer between 0 (inclusive) and n (exclusive)"}
551551
[n]
552-
(rem (rand) n))
552+
(if (zero? n)
553+
0
554+
(rem (rand) n)))
553555

554556
(defn =
555557
{:doc "Returns true if all the arguments are equivalent. Otherwise, returns false. Uses

tests/pixie/tests/test-stdlib.pxi

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -361,7 +361,9 @@
361361

362362
(t/deftest test-rand-int
363363
(let [vs (repeatedly 10 #(rand-int 4))]
364-
(t/assert (every? #(and (>= % 0) (< % 4)) vs))))
364+
(t/assert (every? #(and (>= % 0) (< % 4)) vs)))
365+
(let [vs (repeatedly 10 #(rand-int 0))]
366+
(t/assert (every? zero? vs))))
365367

366368
(t/deftest test-some
367369
(t/assert= (some even? [2 4 6 8]) true)

0 commit comments

Comments
 (0)