Skip to content
Snippets Groups Projects
Commit 9929b3a8 authored by Cam Saül's avatar Cam Saül
Browse files

Add some docstrings to things that are missing them :page_facing_up:

parent 4ad88ae6
Branches
Tags
No related merge requests found
......@@ -63,7 +63,7 @@
(u/is-email? email)
(map? context)]}
(let [model->url-fn #(case %
"Card" url/question-url
"Card" url/card-url
"Dashboard" url/dashboard-url
"Pulse" url/pulse-url
"Segment" url/segment-url)
......
......@@ -35,12 +35,12 @@
;;; # ------------------------------------------------------------ AUTH & SESSION MANAGEMENT ------------------------------------------------------------
(def ^:const metabase-session-cookie "metabase.SESSION_ID")
(def ^:const metabase-session-header "x-metabase-session")
(def ^:const metabase-api-key-header "x-metabase-apikey")
(def ^:private ^:const metabase-session-cookie "metabase.SESSION_ID")
(def ^:private ^:const metabase-session-header "x-metabase-session")
(def ^:private ^:const metabase-api-key-header "x-metabase-apikey")
(def ^:const response-unauthentic {:status 401, :body "Unauthenticated"})
(def ^:const response-forbidden {:status 403, :body "Forbidden"})
(def ^:const response-unauthentic "Generic `401 (Unauthenticated)` Ring response map." {:status 401, :body "Unauthenticated"})
(def ^:const response-forbidden "Generic `403 (Forbidden)` Ring response map." {:status 403, :body "Forbidden"})
(defn wrap-session-id
......
......@@ -175,7 +175,7 @@
(defn- card-href
[card]
(h (urls/question-url (:id card))))
(h (urls/card-url (:id card))))
;; ported from https://github.com/radkovo/CSSBox/blob/cssbox-4.10/src/main/java/org/fit/cssbox/demo/ImageRenderer.java
(defn- render-to-png
......
......@@ -113,7 +113,7 @@
(let [image-byte-array (p/render-pulse-card-to-png card data)
slack-file-url (slack/upload-file! image-byte-array "image.png" channel-id)]
{:title card-name
:title_link (urls/question-url card-id)
:title_link (urls/card-url card-id)
:image_url slack-file-url
:fallback card-name}))
......
(ns metabase.util.urls
(:require [metabase.models.setting :as setting]))
(defn pulse-url [id]
(defn pulse-url
"Return an appropriate URL for a `Pulse` with ID.
(pulse-url 10) -> \"http://localhost:3000/pulse#10\""
[^Integer id]
(format "%s/pulse#%d" (setting/get :-site-url) id))
(defn dashboard-url [id]
(defn dashboard-url
"Return an appropriate URL for a `Dashboard` with ID.
(dashboard-url 10) -> \"http://localhost:3000/dash/10\""
[^Integer id]
(format "%s/dash/%d" (setting/get :-site-url) id))
(defn question-url [id]
(defn card-url
"Return an appropriate URL for a `Card` with ID.
(card-url 10) -> \"http://localhost:3000/card/10\""
[^Integer id]
(format "%s/card/%d" (setting/get :-site-url) id))
(defn segment-url [id]
(defn segment-url
"Return an appropriate URL for a `Segment` with ID.
(segment-url 10) -> \"http://localhost:3000/admin/datamodel/segment/10\""
[^Integer id]
(format "%s/admin/datamodel/segment/%d" (setting/get :-site-url) id))
......@@ -26,21 +26,18 @@
;; extract session-id from header
(expect "foobar"
(-> (wrapped-handler (mock/header (mock/request :get "/anyurl") metabase-session-header "foobar"))
:metabase-session-id))
(:metabase-session-id (wrapped-handler (mock/header (mock/request :get "/anyurl") @(resolve 'metabase.middleware/metabase-session-header) "foobar"))))
;; extract session-id from cookie
(expect "cookie-session"
(-> (wrapped-handler (assoc (mock/request :get "/anyurl") :cookies {metabase-session-cookie {:value "cookie-session"}}))
:metabase-session-id))
(:metabase-session-id (wrapped-handler (assoc (mock/request :get "/anyurl") :cookies {@(resolve 'metabase.middleware/metabase-session-cookie) {:value "cookie-session"}}))))
;; if both header and cookie session-ids exist, then we expect the cookie to take precedence
(expect "cookie-session"
(-> (wrapped-handler (-> (mock/header (mock/request :get "/anyurl") metabase-session-header "foobar")
(assoc :cookies {metabase-session-cookie {:value "cookie-session"}})))
:metabase-session-id))
(:metabase-session-id (wrapped-handler (assoc (mock/header (mock/request :get "/anyurl") @(resolve 'metabase.middleware/metabase-session-header) "foobar")
:cookies {@(resolve 'metabase.middleware/metabase-session-cookie) {:value "cookie-session"}}))))
;; =========================== TEST enforce-authentication middleware ===========================
......@@ -132,14 +129,12 @@
;; no apikey in the request
(expect nil
(-> (wrapped-api-key-handler (mock/request :get "/anyurl") )
:metabase-session-id))
(:metabase-session-id (wrapped-api-key-handler (mock/request :get "/anyurl"))))
;; extract apikey from header
(expect "foobar"
(-> (wrapped-api-key-handler (mock/header (mock/request :get "/anyurl") metabase-api-key-header "foobar"))
:metabase-api-key))
(:metabase-api-key (wrapped-api-key-handler (mock/header (mock/request :get "/anyurl") @(resolve 'metabase.middleware/metabase-api-key-header) "foobar"))))
;; =========================== TEST enforce-api-key middleware ===========================
......
......@@ -109,7 +109,7 @@
(expected-docstr-percentage-for-day-of-year (u/date-extract :day-of-year)))
([doy]
(let [start-day 30
start-percent 80.0
start-percent 85.0
target-doy-for-100-percent 90
remaining-percent (- 100.0 start-percent)
remaining-days (- target-doy-for-100-percent start-day)]
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment