Skip to content

Commit

Permalink
Merge pull request #74 from cldwalker/issue-73
Browse files Browse the repository at this point in the history
fix snapshot dependencies for release candidates and no patch version
  • Loading branch information
ato committed Aug 10, 2012
2 parents 6d1fb33 + 997735b commit ec8762b
Show file tree
Hide file tree
Showing 2 changed files with 42 additions and 16 deletions.
2 changes: 1 addition & 1 deletion src/clojars/maven.clj
Expand Up @@ -49,7 +49,7 @@
(defn snapshot-pom-file [{:keys [jar_name version] :as jar}]
(let [metadata-file (io/file (directory-for jar) "maven-metadata.xml")
snapshot (snapshot-version metadata-file)
filename (format "%s-%s-%s.pom" jar_name (re-find #"\d+\.\d+\.\d+" version) snapshot)]
filename (format "%s-%s-%s.pom" jar_name (re-find #"\S+(?=-SNAPSHOT$)" version) snapshot)]
(io/file (directory-for jar) filename)))

(defn jar-to-pom-map [{:keys [jar_name version] :as jar}]
Expand Down
56 changes: 41 additions & 15 deletions test/clojars/test/unit/maven.clj
Expand Up @@ -21,20 +21,46 @@
:jar_name "monger"
:version "1.2.0-alpha1"}))))

(deftest snapshot-pom-file-handles-single-digit-version
(def snapshot "20120806.052549-1")

(defn expected-file [& [d1 d2 d3 file :as args]]
(io/file (config :repo) d1 d2 d3 (str file "-" snapshot ".pom")))

(defn snapshot-pom-file-with [jar-map]
(with-redefs [snapshot-version (constantly snapshot)]
(snapshot-pom-file jar-map)))

(deftest snapshot-pom-file-handles-single-digit-patch-version
(is (=
(expected-file "fake" "test" "0.1.3-SNAPSHOT" "test-0.1.3")
(snapshot-pom-file-with {:group_name "fake"
:jar_name "test"
:version "0.1.3-SNAPSHOT"}))))

(deftest snapshot-pom-file-handles-multi-digit-patch-version
(is (=
(io/file (config :repo) "fake" "test" "0.1.3-SNAPSHOT" "test-0.1.3-20120806.052549-1.pom")
(with-redefs
[snapshot-version (constantly "20120806.052549-1")]
(snapshot-pom-file {:group_name "fake"
:jar_name "test"
:version "0.1.3-SNAPSHOT"})))))

(deftest snapshot-pom-file-handles-multi-digit-version
(expected-file "fake" "test" "0.11.13-SNAPSHOT" "test-0.11.13")
(snapshot-pom-file-with {:group_name "fake"
:jar_name "test"
:version "0.11.13-SNAPSHOT"}))))

(deftest snapshot-pom-file-handles-no-patch-version
(is (=
(expected-file "fake" "test" "0.1-SNAPSHOT" "test-0.1")
(snapshot-pom-file-with {:group_name "fake"
:jar_name "test"
:version "0.1-SNAPSHOT"}))))

(deftest snapshot-pom-file-handles-no-patch-version
(is (=
(expected-file "fake" "test" "0.1-SNAPSHOT" "test-0.1")
(snapshot-pom-file-with {:group_name "fake"
:jar_name "test"
:version "0.1-SNAPSHOT"}))))

(deftest snapshot-pom-file-handles-release-candidate-version
(is (=
(io/file (config :repo) "fake" "test" "0.11.13-SNAPSHOT" "test-0.11.13-20120806.052549-1.pom")
(with-redefs
[snapshot-version (constantly "20120806.052549-1")]
(snapshot-pom-file {:group_name "fake"
:jar_name "test"
:version "0.11.13-SNAPSHOT"})))))
(expected-file "fake" "test" "0.2.1-alpha-SNAPSHOT" "test-0.2.1-alpha")
(snapshot-pom-file-with {:group_name "fake"
:jar_name "test"
:version "0.2.1-alpha-SNAPSHOT"}))))

0 comments on commit ec8762b

Please sign in to comment.