Skip to content
Snippets Groups Projects
Commit f19f4f56 authored by Cam Saul's avatar Cam Saul
Browse files

make sure card names are random enough

parent 73dc6adf
No related branches found
No related tags found
No related merge requests found
......@@ -4,7 +4,7 @@
[korma.core :refer :all]
[metabase.db :refer :all]
[metabase.models.card :refer [Card]]
[metabase.test.util :refer [match-$ expect-eval-actual-first deserialize-dates]]
[metabase.test.util :refer [match-$ expect-eval-actual-first deserialize-dates random-name]]
[metabase.test-data :refer :all]))
;; # CARD LIFECYCLE
......@@ -27,12 +27,9 @@
:visualization_settings {:global {:title nil}}})
(deserialize-dates :updated_at :created_at)))
(defn random-card-name []
(name (gensym)))
;; ## POST /api/card
;; Test that we can make a card
(let [card-name (random-card-name)]
(let [card-name (random-name)]
(expect-eval-actual-first (match-$ (sel :one Card :name card-name)
{:description nil
:organization_id (:id @test-org)
......@@ -57,7 +54,7 @@
;; ## GET /api/card/:id
;; Test that we can fetch a card
(let [card-name (random-card-name)]
(let [card-name (random-name)]
(expect-eval-actual-first
(match-$ (sel :one Card :name card-name)
{:description nil
......@@ -80,7 +77,7 @@
:breakout [nil]
:limit nil}
:database (:id @test-db)}
:id id
:id $
:display "scalar"
:visualization_settings {:global {:title nil}}
:public_perms 0
......@@ -92,7 +89,7 @@
;; ## DELETE /api/card/:id
;; Check that we can delete a card
(expect-eval-actual-first nil
(let [{:keys [id]} (post-card (random-card-name))]
(let [{:keys [id]} (post-card (random-name))]
((user->client :rasta) :delete 204 (format "card/%d" id))
(sel :one Card :id id)))
......@@ -111,13 +108,13 @@
;; ## GET /api/card/:id/favorite
;; Can we see if a Card is a favorite ?
(expect-let [card (post-card (random-card-name))]
(expect-let [card (post-card (random-name))]
{:favorite false}
(fave? card))
;; ## POST /api/card/:id/favorite
;; Can we favorite a card?
(expect-let [card (post-card (random-card-name))]
(expect-let [card (post-card (random-name))]
[{:favorite false}
{:favorite true}]
[(fave? card)
......@@ -126,7 +123,7 @@
;; DELETE /api/card/:id/favorite
;; Can we unfavorite a card?
(expect-let [card (post-card (random-card-name))
(expect-let [card (post-card (random-name))
get-fave? ((user->client :rasta) :get (format "card/%d/favorite" (:id card)))]
[{:favorite false}
{:favorite true}
......
......@@ -77,3 +77,10 @@
(let [fn-name (gensym)]
`(def ~(vary-meta fn-name assoc :expectation true)
(fn [] (-doexpect ~expected ~actual)))))
;; ## random-name
(defn random-name
"Generate a random string of 20 uppercase letters."
[]
(->> (repeatedly 20 #(-> (rand-int 26) (+ (int \A)) char))
(apply str)))
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment