bugs fixed; tests repaired
This commit is contained in:
@@ -12,15 +12,15 @@
|
|||||||
|
|
||||||
(defn set-note [date title text]
|
(defn set-note [date title text]
|
||||||
(let [key (build-key date title)]
|
(let [key (build-key date title)]
|
||||||
(do
|
(redis/hset db note key text)))
|
||||||
(redis/hset db views key 0)
|
|
||||||
(redis/hset db note key text))))
|
|
||||||
|
|
||||||
(defn get-note [date title]
|
(defn get-note [date title]
|
||||||
(let [key (build-key date title)]
|
(let [key (build-key date title)
|
||||||
|
text (redis/hget db note key)]
|
||||||
|
(when text
|
||||||
(do
|
(do
|
||||||
(redis/hincrby db views key 1)
|
(redis/hincrby db views key 1)
|
||||||
(redis/hget db note key))))
|
text))))
|
||||||
|
|
||||||
(defn get-views [date title]
|
(defn get-views [date title]
|
||||||
(redis/hget db views (build-key date title)))
|
(redis/hget db views (build-key date title)))
|
||||||
@@ -29,4 +29,7 @@
|
|||||||
(redis/hexists db note (build-key date title)))
|
(redis/hexists db note (build-key date title)))
|
||||||
|
|
||||||
(defn delete-note [date title]
|
(defn delete-note [date title]
|
||||||
(redis/hdel db note (build-key date title)))
|
(let [key (build-key date title)]
|
||||||
|
(do
|
||||||
|
(redis/hdel db views key)
|
||||||
|
(redis/hdel db note key))))
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
(def page-width
|
(def page-width
|
||||||
(mixin
|
(mixin
|
||||||
:width :800px))
|
:width :800px))
|
||||||
|
|
||||||
(def helvetica-neue
|
(def helvetica-neue
|
||||||
(mixin
|
(mixin
|
||||||
:font-weight 300
|
:font-weight 300
|
||||||
@@ -64,6 +65,8 @@
|
|||||||
:color foreground
|
:color foreground
|
||||||
:margin 0
|
:margin 0
|
||||||
:padding 0)
|
:padding 0)
|
||||||
|
(rule ".helvetica-neue"
|
||||||
|
helvetica-neue)
|
||||||
(rule "#hero"
|
(rule "#hero"
|
||||||
:padding-top :5em
|
:padding-top :5em
|
||||||
:padding-bottom :5em
|
:padding-bottom :5em
|
||||||
|
|||||||
@@ -86,22 +86,21 @@
|
|||||||
|
|
||||||
(defpage "/:year/:month/:day/:title/export" {:keys [year month day title]}
|
(defpage "/:year/:month/:day/:title/export" {:keys [year month day title]}
|
||||||
(let [md-text (get-note [year month day] title)]
|
(let [md-text (get-note [year month day] title)]
|
||||||
(if md-text md-text (get-page 404))))
|
(if md-text md-text (status 404 (get-page 404)))))
|
||||||
|
|
||||||
(defpage "/:year/:month/:day/:title/stat" {:keys [year month day title]}
|
(defpage "/:year/:month/:day/:title/stat" {:keys [year month day title]}
|
||||||
(let [views (get-views [year month day] title)]
|
(let [views (get-views [year month day] title)]
|
||||||
(if views
|
(if views
|
||||||
(common/layout "Statistics"
|
(common/layout "Statistics"
|
||||||
[:article
|
[:article.helvetica-neue
|
||||||
[:table {:style "width: 100%"}
|
[:table {:style "width: 100%"}
|
||||||
[:tr
|
[:tr
|
||||||
[:td "Published"]
|
[:td "Published"]
|
||||||
[:td (interpose "-" [year month day])]]
|
[:td (interpose "-" [year month day])]]
|
||||||
[:tr
|
[:tr
|
||||||
[:td "Article views"]
|
[:td "Article views"]
|
||||||
[:td views]]
|
[:td views]]]])
|
||||||
]])
|
(status 404 (get-page 404)))))
|
||||||
(get-page 404))))
|
|
||||||
|
|
||||||
; New Note Posting
|
; New Note Posting
|
||||||
(defpage [:post "/post-note"] {:keys [draft session-key session-value]}
|
(defpage [:post "/post-note"] {:keys [draft session-key session-value]}
|
||||||
|
|||||||
@@ -34,16 +34,19 @@
|
|||||||
(has-body (send-request (url 2012 6 3 "some-title" "export")) test-note)))
|
(has-body (send-request (url 2012 6 3 "some-title" "export")) test-note)))
|
||||||
|
|
||||||
(deftest requests
|
(deftest requests
|
||||||
(testing "HTTP Statuses"
|
(testing "HTTP Status"
|
||||||
(testing "of a wrong access"
|
(testing "of a wrong access"
|
||||||
(has-status (send-request "/wrong-page") 404))
|
(has-status (send-request "/wrong-page") 404)
|
||||||
|
(has-status (send-request (url 2012 6 3 "lol" "stat")) 404)
|
||||||
|
(has-status (send-request (url 2012 6 3 "lol" "export")) 404)
|
||||||
(has-status (send-request (url 2012 6 3 "lol")) 404)
|
(has-status (send-request (url 2012 6 3 "lol")) 404)
|
||||||
(has-status (send-request (url 2012 6 4 "wrong-title")) 404)
|
(has-status (send-request (url 2012 6 4 "wrong-title")) 404))
|
||||||
(testing "of corrupt note-post"
|
(testing "of corrupt note-post"
|
||||||
(has-status (send-request [:post "/post-note"]) 400))
|
(has-status (send-request [:post "/post-note"]) 400))
|
||||||
(testing "valid accesses"
|
(testing "valid accesses"
|
||||||
(has-status (send-request "/new") 200)
|
(has-status (send-request "/new") 200)
|
||||||
(has-status (send-request (url 2012 6 3 "some-title")) 200)
|
(has-status (send-request (url 2012 6 3 "some-title")) 200)
|
||||||
(has-status (send-request (url 2012 6 3 "some-title" "export")) 200)
|
(has-status (send-request (url 2012 6 3 "some-title" "export")) 200)
|
||||||
(has-status (send-request (url 2012 6 3 "some-title" "theme" "dark")) 200)
|
(has-status (send-request (url 2012 6 3 "some-title" "stat")) 200)
|
||||||
|
(has-status (send-request (url 2012 6 3 "some-title")) 200)
|
||||||
(has-status (send-request "/") 200))))
|
(has-status (send-request "/") 200))))
|
||||||
|
|||||||
Reference in New Issue
Block a user