bugs fixed; tests repaired

This commit is contained in:
Christian Mueller
2012-06-09 17:07:54 +02:00
parent ce4dc6ab2a
commit ec449f7660
5 changed files with 109 additions and 101 deletions
+9 -6
View File
@@ -12,15 +12,15 @@
(defn set-note [date title text]
(let [key (build-key date title)]
(do
(redis/hset db views key 0)
(redis/hset db note key text))))
(redis/hset db note key text)))
(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
(redis/hincrby db views key 1)
(redis/hget db note key))))
text))))
(defn get-views [date title]
(redis/hget db views (build-key date title)))
@@ -29,4 +29,7 @@
(redis/hexists db note (build-key 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))))
+3
View File
@@ -11,6 +11,7 @@
(def page-width
(mixin
:width :800px))
(def helvetica-neue
(mixin
:font-weight 300
@@ -64,6 +65,8 @@
:color foreground
:margin 0
:padding 0)
(rule ".helvetica-neue"
helvetica-neue)
(rule "#hero"
:padding-top :5em
:padding-bottom :5em
+4 -5
View File
@@ -86,22 +86,21 @@
(defpage "/:year/:month/:day/:title/export" {:keys [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]}
(let [views (get-views [year month day] title)]
(if views
(common/layout "Statistics"
[:article
[:article.helvetica-neue
[:table {:style "width: 100%"}
[:tr
[:td "Published"]
[:td (interpose "-" [year month day])]]
[:tr
[:td "Article views"]
[:td views]]
]])
(get-page 404))))
[:td views]]]])
(status 404 (get-page 404)))))
; New Note Posting
(defpage [:post "/post-note"] {:keys [draft session-key session-value]}
+7 -4
View File
@@ -34,16 +34,19 @@
(has-body (send-request (url 2012 6 3 "some-title" "export")) test-note)))
(deftest requests
(testing "HTTP Statuses"
(testing "HTTP Status"
(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 4 "wrong-title")) 404)
(has-status (send-request (url 2012 6 4 "wrong-title")) 404))
(testing "of corrupt note-post"
(has-status (send-request [:post "/post-note"]) 400))
(testing "valid accesses"
(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" "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))))