Skip to content

Commit

Permalink
Merge pull request #252 from saidone75/dev
Browse files Browse the repository at this point in the history
Dev
  • Loading branch information
saidone75 authored May 1, 2024
2 parents e01e83e + e0840c6 commit d40c49c
Show file tree
Hide file tree
Showing 3 changed files with 33 additions and 6 deletions.
2 changes: 1 addition & 1 deletion resources/taoensso.telemere.rt-min-level.edn
Original file line number Diff line number Diff line change
@@ -1 +1 @@
:debug
:info
17 changes: 12 additions & 5 deletions src/cral/utils/utils.clj
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,7 @@
[taoensso.telemere :as t])
(:import (clojure.lang PersistentHashMap)
(cral.model.auth Ticket)
(java.util Base64)
(javax.net.ssl SSLException)))
(java.util Base64)))

(defn kebab-case
"Turn a camelCase string into kebab-case."
Expand Down Expand Up @@ -88,9 +87,17 @@
(defn ex-response
"Build a response from a client exception."
[^Exception e]
(t/log! :error (.getMessage e))
{:status 500
:message (.getMessage e)})
(t/trace! e)
(let [ex-data (ex-data e)]
(if-not (nil? ex-data)
(let [message (get-in (kebab-keywordize-keys (json/read-str (:body ex-data))) [:error :error-key])]
(t/log! :debug message)
{:status (:status ex-data)
:message message})
(do
(t/log! :debug (.getMessage e))
{:status 500
:message (.getMessage e)}))))

(defn- add-auth
"Add authorization header from ticket."
Expand Down
20 changes: 20 additions & 0 deletions test/cral/ratings_test.clj
Original file line number Diff line number Diff line change
Expand Up @@ -92,4 +92,24 @@
(is (= (:status (ratings/get-rating ticket created-node-id rm/likes)) 200))
(is (= (:status (ratings/get-rating ticket created-node-id rm/five-star)) 200))
;; clean up
(is (= (:status (nodes/delete-node ticket created-node-id {:permanent true})) 204))))

(deftest delete-rating-test
(let [ticket (get-in (auth/create-ticket c/user c/password) [:body :entry])
;; create a node
created-node-id (->> (model/map->CreateNodeBody {:name (.toString (UUID/randomUUID)) :node-type cm/type-content})
(nodes/create-node ticket (tu/get-guest-home ticket))
(#(get-in % [:body :entry :id])))
;; create user if not exist
_ (tu/create-test-user ticket saidone)
;; create a personal ticket
saidone-ticket (get-in (auth/create-ticket saidone saidone) [:body :entry])
;; rate the node
_ (->> (model/map->CreateRatingBody {:id rm/likes :my-rating true})
(ratings/create-rating ticket created-node-id))
_ (->> (model/map->CreateRatingBody {:id rm/five-star :my-rating 5})
(ratings/create-rating saidone-ticket created-node-id))]
(is (= (:status (ratings/delete-rating ticket created-node-id rm/likes)) 204))
(is (= (:status (ratings/delete-rating ticket created-node-id rm/five-star)) 204))
;; clean up
(is (= (:status (nodes/delete-node ticket created-node-id {:permanent true})) 204))))

0 comments on commit d40c49c

Please sign in to comment.