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

test fix, I think

parent 20d51f89
No related branches found
No related tags found
No related merge requests found
......@@ -48,7 +48,8 @@
(defendpoint GET "/:id/fields"
"Get all `Fields` for `Table` with ID."
[id]
(sel :many Field :table_id id))
;; TODO: READ CHECK ?
(sel :many Field :table_id id (order :name :ASC)))
(defendpoint GET "/:id/query_metadata" [id]
(->404 (sel :one Table :id id)
......
(ns metabase.api.query
"/api/query endpoints."
(:require [clojure.data.csv :as csv]
[korma.core :refer [where subselect fields order limit]]
[compojure.core :refer [defroutes GET PUT POST DELETE]]
......@@ -28,15 +29,14 @@
[org f]
{org Required, f FilterOptionAllOrMine}
(read-check Org org)
(-> (case (or f :all)
:all (sel :many Query
(where (or (= :creator_id *current-user-id*) (> :public_perms common/perms-none)))
(where {:database_id [in (subselect Database (fields :id) (where {:organization_id org}))]})
(order :name :ASC))
:mine (sel :many Query :creator_id *current-user-id*
(where {:database_id [in (subselect Database (fields :id) (where {:organization_id org}))]})
(order :name :ASC)))
(hydrate :creator :database)))
(let [all? (or (not f) (= f :all))]
(-> (sel :many Query
(where {:database_id [in (subselect Database (fields :id) (where {:organization_id org}))]})
(where (or {:creator_id *current-user-id*}
(when all?
{:public_perms [> common/perms-none]})))
(order :name :ASC))
(hydrate :creator :database))))
(defn query-clone
......
......@@ -54,32 +54,32 @@
((user->client :rasta) :get 200 (format "meta/table/%d" (table->id :venues))))
;; ## GET /api/meta/table/:id/fields
(expect [(match-$ (sel :one Field :id (field->id :categories :name))
(expect [(match-$ (sel :one Field :id (field->id :categories :id))
{:description nil
:table_id (table->id :categories)
:special_type nil
:name "NAME"
:special_type "id"
:name "ID"
:updated_at $
:active true
:id (field->id :categories :name)
:id (field->id :categories :id)
:field_type "info"
:position 0
:preview_display true
:created_at $
:base_type "TextField"})
(match-$ (sel :one Field :id (field->id :categories :id))
:base_type "BigIntegerField"})
(match-$ (sel :one Field :id (field->id :categories :name))
{:description nil
:table_id (table->id :categories)
:special_type "id"
:name "ID"
:special_type nil
:name "NAME"
:updated_at $
:active true
:id (field->id :categories :id)
:id (field->id :categories :name)
:field_type "info"
:position 0
:preview_display true
:created_at $
:base_type "BigIntegerField"})]
:base_type "TextField"})]
((user->client :rasta) :get 200 (format "meta/table/%d/fields" (table->id :categories))))
;; ## GET /api/meta/table/:id/query_metadata
......
......@@ -187,7 +187,7 @@
;; ## GET /api/query
;; Fetch Queries for the current Org
(expect-eval-actual-first
(let [[query-1 query-2] (sel :many Query :database_id (:id @test-db) (order :id :ASC))
(let [[query-1 query-2] (sel :many Query :database_id (:id @test-db) (order :name :ASC))
rasta (match-$ (fetch-user :rasta)
{:common_name "Rasta Toucan"
:date_joined $
......@@ -206,38 +206,38 @@
:name "Test Database"
:organization_id @org-id
:description nil})]
#{(match-$ query-1
{:creator rasta
:database_id (:id @test-db)
:name $
:type "rawsql"
:creator_id (user->id :rasta)
:updated_at $
:details {:timezone nil
:sql "SELECT COUNT(*) FROM VENUES;"}
:id $
:database db
:version 1
:public_perms 0
:created_at $})
(match-$ query-2
{:creator rasta
:database_id (:id @test-db)
:name $
:type "rawsql"
:creator_id (user->id :rasta)
:updated_at $
:details {:timezone nil
:sql "SELECT COUNT(*) FROM VENUES;"}
:id $
:database db
:version 1
:public_perms 0
:created_at $})})
[(match-$ query-1
{:creator rasta
:database_id (:id @test-db)
:name $
:type "rawsql"
:creator_id (user->id :rasta)
:updated_at $
:details {:timezone nil
:sql "SELECT COUNT(*) FROM VENUES;"}
:id $
:database db
:version 1
:public_perms 0
:created_at $})
(match-$ query-2
{:creator rasta
:database_id (:id @test-db)
:name $
:type "rawsql"
:creator_id (user->id :rasta)
:updated_at $
:details {:timezone nil
:sql "SELECT COUNT(*) FROM VENUES;"}
:id $
:database db
:version 1
:public_perms 0
:created_at $})])
(do (cascade-delete Query :database_id (:id @test-db))
(create-query)
(create-query)
(set ((user->client :rasta) :get 200 "query" :org @org-id))))
((user->client :rasta) :get 200 "query" :org @org-id)))
;; ## POST /api/query/:id/csv
......
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