Skip to content

Commit 9052197

Browse files
JarrodCTaylorpuredanger
authored andcommitted
find-versions now returns coords for each procurer
1 parent 4abf328 commit 9052197

File tree

2 files changed

+15
-1
lines changed

2 files changed

+15
-1
lines changed

src/main/clojure/clojure/tools/deps/cli/api.clj

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -392,7 +392,10 @@
392392
[{:keys [lib tool n] :or {n 8} :as args}]
393393
(let [{:keys [root-edn user-edn]} (deps/find-edn-maps)
394394
master-edn (deps/merge-edns [root-edn user-edn])
395-
trunc-fn (if (= n :all) (fn [_n x] x) #(apply take-last %&))
395+
trunc-fn (fn [n x]
396+
(if (= n :all)
397+
x
398+
(mapcat #(take-last n %) (vals (group-by keys x)))))
396399
coords (cond
397400
tool
398401
(if-let [{:keys [lib coord]} (tool/resolve-tool (name tool))]

src/test/clojure/clojure/tools/deps/cli/test_api.clj

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
(ns clojure.tools.deps.cli.test-api
22
(:require
3+
[clojure.edn :as edn]
34
[clojure.java.io :as jio]
45
[clojure.string :as str]
56
[clojure.test :refer [deftest is] :as test]
@@ -196,6 +197,16 @@
196197

197198
(is (= "" (with-out-str (api/find-versions {:lib 'io.github.clojure/bogus-taco-slurpee})))))
198199

200+
(deftest test-find-versions-returns-results-from-all-procurers
201+
(let [expected [[:git/tag :git/sha] [:mvn/version]]
202+
actual (->> (api/find-versions {:lib 'io.github.clojure/tools.build :n 4})
203+
with-out-str
204+
str/split-lines
205+
(map edn/read-string)
206+
(group-by keys)
207+
keys)]
208+
(is (= expected actual))))
209+
199210
(comment
200211
(test-find-maven-version)
201212
(test-find-git-version)

0 commit comments

Comments
 (0)