From bb68b788127047718c3dbf9b3bfd0b6aba59bf22 Mon Sep 17 00:00:00 2001 From: victor Date: Wed, 28 Apr 2021 19:42:21 +0200 Subject: [PATCH 1/6] Add more collection endpoints --- lib/metabase/endpoint/collection.rb | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/lib/metabase/endpoint/collection.rb b/lib/metabase/endpoint/collection.rb index 3e830f1..38bc618 100644 --- a/lib/metabase/endpoint/collection.rb +++ b/lib/metabase/endpoint/collection.rb @@ -11,6 +11,26 @@ module Collection def collections(**params) get('/api/collection', **params) end + + # Fetch a specific collection. + # + # @param collection_id [Integer, String] Collection ID + # @return [Array] Parsed response JSON + # @see https://github.com/metabase/metabase/blob/master/docs/api-documentation.md#get-apicollectionid + def collection(collection_id, **params) + get("/api/collection/#{collection_id}", **params) + end + + # Fetch a specific collection items. + # + # @param collection_id [Integer, String] Collection ID + # @param model [String] value may be nil, or if non-nil, value must be one of: card, collection, dashboard, pulse, snippet. + # @param archived [Boolean] + # @return [Array] Parsed response JSON + # @see https://github.com/metabase/metabase/blob/master/docs/api-documentation.md#get-apicollectioniditems + def collection(collection_id, **params) + get("/api/collection/#{collection_id}/items", **params) + end end end end From 42554e67e832d02e38c3e8320dca420b3d0023c7 Mon Sep 17 00:00:00 2001 From: victor Date: Thu, 29 Apr 2021 14:03:47 +0200 Subject: [PATCH 2/6] fix endpoint --- lib/metabase/endpoint/collection.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/metabase/endpoint/collection.rb b/lib/metabase/endpoint/collection.rb index 38bc618..08f72c7 100644 --- a/lib/metabase/endpoint/collection.rb +++ b/lib/metabase/endpoint/collection.rb @@ -28,7 +28,7 @@ def collection(collection_id, **params) # @param archived [Boolean] # @return [Array] Parsed response JSON # @see https://github.com/metabase/metabase/blob/master/docs/api-documentation.md#get-apicollectioniditems - def collection(collection_id, **params) + def collection_items(collection_id, **params) get("/api/collection/#{collection_id}/items", **params) end end From 0ce94b7482996fde362f2d0cad6b2e246fff2592 Mon Sep 17 00:00:00 2001 From: victor Date: Thu, 29 Apr 2021 14:08:29 +0200 Subject: [PATCH 3/6] Add basic spec for new endpoints --- spec/metabase/endpoint/collection_spec.rb | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/spec/metabase/endpoint/collection_spec.rb b/spec/metabase/endpoint/collection_spec.rb index fe4b328..09b3a7b 100644 --- a/spec/metabase/endpoint/collection_spec.rb +++ b/spec/metabase/endpoint/collection_spec.rb @@ -11,4 +11,22 @@ end end end + + describe 'collection', vcr: true do + context 'success' do + it 'returns collection' do + collection = client.collection(1) + expect(collection).to be_kind_of(Array) + end + end + end + + describe 'collection_items', vcr: true do + context 'success' do + it 'returns collection items' do + collection_items = client.collection_items(1) + expect(collection_items).to be_kind_of(Array) + end + end + end end From 3d7a0eb8d09c8052d8ff6a73b305fb0c5af15130 Mon Sep 17 00:00:00 2001 From: victor Date: Thu, 29 Apr 2021 14:10:45 +0200 Subject: [PATCH 4/6] fix line too long --- lib/metabase/endpoint/collection.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/metabase/endpoint/collection.rb b/lib/metabase/endpoint/collection.rb index 08f72c7..f1b9fe4 100644 --- a/lib/metabase/endpoint/collection.rb +++ b/lib/metabase/endpoint/collection.rb @@ -24,7 +24,7 @@ def collection(collection_id, **params) # Fetch a specific collection items. # # @param collection_id [Integer, String] Collection ID - # @param model [String] value may be nil, or if non-nil, value must be one of: card, collection, dashboard, pulse, snippet. + # @param model [String] value may be nil, or card, collection, dashboard, pulse or snippet. # @param archived [Boolean] # @return [Array] Parsed response JSON # @see https://github.com/metabase/metabase/blob/master/docs/api-documentation.md#get-apicollectioniditems From 10997cd93dd7a3198c51a47678a7ed3d242c19f2 Mon Sep 17 00:00:00 2001 From: victor Date: Thu, 29 Apr 2021 14:19:41 +0200 Subject: [PATCH 5/6] update metabase --- docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index 8c2ea1b..67dc0a5 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,7 +1,7 @@ version: '3' services: metabase: - image: metabase/metabase:v0.35.4 + image: metabase/metabase:v0.39.1 ports: - 3030:3000 volumes: From 2d957a14f6f1d55c65569a6ad6d0d2d17b82e1dc Mon Sep 17 00:00:00 2001 From: victor Date: Thu, 29 Apr 2021 14:27:26 +0200 Subject: [PATCH 6/6] donwgrade metabase version --- docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index 67dc0a5..8c2ea1b 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,7 +1,7 @@ version: '3' services: metabase: - image: metabase/metabase:v0.39.1 + image: metabase/metabase:v0.35.4 ports: - 3030:3000 volumes: