Skip to content

Commit

Permalink
Paper over the URL-encoding problem in clojure.java.io
Browse files Browse the repository at this point in the history
  • Loading branch information
trptcolin committed Nov 28, 2011
1 parent 8ada3f7 commit ad8ad0f
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 4 deletions.
2 changes: 1 addition & 1 deletion src/koan_engine/checker.clj
Expand Up @@ -6,7 +6,7 @@
(:require [koan-engine.util :as u]))

(defn mk-answers [koan-resource]
(into {} (u/try-read (resource koan-resource))))
(into {} (u/try-read (.getPath (resource koan-resource)))))

(defn replace-with [s k replacements]
(let [unreplaced-texts (split s (re-pattern (str "\\b" k "\\b")))]
Expand Down
2 changes: 1 addition & 1 deletion src/koan_engine/koans.clj
Expand Up @@ -4,7 +4,7 @@

;; TODO: Proper koan validation. Accept the path as an argument.
(defn ordered-koans [answer-path]
(map first (u/try-read (resource answer-path))))
(map first (u/try-read (.getPath (resource answer-path)))))

(defn ordered-koan-paths [koan-root answer-path]
(map (fn [koan-name]
Expand Down
5 changes: 3 additions & 2 deletions src/koan_engine/util.clj
@@ -1,6 +1,7 @@
(ns koan-engine.util
(:require [clojure.string :as s]
[clojure.java.io :as io]))
[clojure.java.io :as io])
(:import [java.net URLDecoder]))

(defn version<
"< for Clojure's version map."
Expand Down Expand Up @@ -53,7 +54,7 @@
(map read-string (take 3 (s/split version-string #"[\.\-]")))))

(defn try-read [path]
(when path (read-string (slurp path))))
(when path (read-string (slurp (URLDecoder/decode path)))))

(defmacro do-isolated [& forms]
`(binding [*ns* (create-ns (gensym "jail"))]
Expand Down

0 comments on commit ad8ad0f

Please sign in to comment.