Skip to content

Commit

Permalink
Remove some code that duplicated clojure.core fns
Browse files Browse the repository at this point in the history
  • Loading branch information
duelinmarkers committed Jan 8, 2012
1 parent d3487d6 commit 885e737
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 24 deletions.
13 changes: 2 additions & 11 deletions src/clj_record/serialization.clj
Expand Up @@ -3,18 +3,9 @@
[clj-record.callbacks.built-ins :as callb]))


(defn serialize [value]
(binding [*out* (java.io.StringWriter.)]
(pr value)
(.toString *out*)))

(defn deserialize [value]
(when value
(read (java.io.PushbackReader. (java.io.StringReader. value)))))

(defn serialize-attribute [model-name attribute]
(callbacks/add-callback model-name :before-save (callb/transform-value attribute serialize))
(callbacks/add-callback model-name :after-load (callb/transform-value attribute deserialize)))
(callbacks/add-callback model-name :before-save (callb/transform-value attribute pr-str))
(callbacks/add-callback model-name :after-load (callb/transform-value attribute read-string)))

(defn expand-init-option
"init-model macro-expansion delegate that generates a call to add-validation."
Expand Down
13 changes: 0 additions & 13 deletions test/clj_record/serialization_test.clj
Expand Up @@ -6,19 +6,6 @@
clj-record.test-helper))


(deftest serializes-simple-clojure-types
(are [serialized-value value] (= serialized-value (serialization/serialize value))
"\"123\"" "123"
"123" 123))

(deftest serializes-and-deserializes-clojure-types-symmetrically
(are [value] (= value (serialization/deserialize (serialization/serialize value)))
nil
[1 2 3]
{:a "Aee" :b "Bee" :c "See"}
#{1 :b "See"}
'(1 2 [hey now])))

(defdbtest serialized-attributes-support-common-clojure-types
(restoring-ref (manufacturer/model-metadata)
(serialization/serialize-attribute "manufacturer" :name)
Expand Down

0 comments on commit 885e737

Please sign in to comment.