Skip to content

Commit

Permalink
Merge pull request #125 from NobbZ/master
Browse files Browse the repository at this point in the history
[sum-of-multiples] update tests to match common test data
  • Loading branch information
yurrriq authored Aug 14, 2016
2 parents e20505c + e464056 commit 855236a
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 15 deletions.
8 changes: 3 additions & 5 deletions exercises/sum-of-multiples/src/example.clj
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@
([n] (fn [d] (divides? n d)))
([n d] (zero? (rem n d))))

(defn sum-of-multiples
([n] (sum-of-multiples [3 5] n))
([multiples n]
(reduce (fn [sum x] (cond-> sum (some (divides? x) multiples) (+ x)))
0 (range 1 n))))
(defn sum-of-multiples [multiples n]
(reduce (fn [sum x] (cond-> sum (some (divides? x) multiples) (+ x)))
0 (range 1 n)))
35 changes: 25 additions & 10 deletions exercises/sum-of-multiples/test/sum_of_multiples_test.clj
Original file line number Diff line number Diff line change
Expand Up @@ -3,22 +3,37 @@
sum-of-multiples))

(deftest sum-to-1
(is (zero? (sum-of-multiples/sum-of-multiples 1))))
(is (zero? (sum-of-multiples/sum-of-multiples '(3 5) 1))))

(deftest sum-to-3
(is (= 3 (sum-of-multiples/sum-of-multiples 4))))
(deftest sum-to-4
(is (= 3 (sum-of-multiples/sum-of-multiples '(3 5) 4))))

(deftest sum-to-10
(is (= 23 (sum-of-multiples/sum-of-multiples 10))))
(is (= 23 (sum-of-multiples/sum-of-multiples '(3 5) 10))))

(deftest sum-to-100
(is (= 2318 (sum-of-multiples/sum-of-multiples 100))))
(is (= 2318 (sum-of-multiples/sum-of-multiples '(3 5) 100))))

(deftest sum-to-1000
(is (= 233168 (sum-of-multiples/sum-of-multiples 1000))))
(is (= 233168 (sum-of-multiples/sum-of-multiples '(3 5) 1000))))

(deftest sum-of-configurable-to-20
(is (= 51 (sum-of-multiples/sum-of-multiples [7 13 17] 20))))
(deftest sum-to-20-using-7-13-17
(is (= 51 (sum-of-multiples/sum-of-multiples '(7 13 17) 20))))

(deftest sum-of-configurable-to-10000
(is (= 2203160 (sum-of-multiples/sum-of-multiples [43 47] 10000))))
(deftest sum-to-15-using-4-6
(is (= 30 (sum-of-multiples/sum-of-multiples '(4 6) 15))))

(deftest sum-to-150-using-5-6-8
(is (= 4419 (sum-of-multiples/sum-of-multiples '(5 6 8) 150))))

(deftest sum-to-51-using-5-25
(is (= 275 (sum-of-multiples/sum-of-multiples '(5 25) 51))))

(deftest sum-to-10_000-using-43-47
(is (= 2203160 (sum-of-multiples/sum-of-multiples '(43 47) 10000))))

(deftest sum-to-100-using-1
(is (= 4950 (sum-of-multiples/sum-of-multiples '(1) 100))))

(deftest sum-to-10_000-using-empty
(is (zero? (sum-of-multiples/sum-of-multiples '() 10000))))

0 comments on commit 855236a

Please sign in to comment.