ReviewOS

also looking at this

meemalabs/meema-client-php

Remove "data" in array response

#47
Merged glennmichael123 wants to merge remove-data-array into main
5 files +40 -34
src/Client.phpmodified+8-2
Changes to src/Client.php
@@ -46,7 +46,7 @@ class Client
4646 */
4747 public function initializeEnv()
4848 {
49 if (! file_exists(dirname(__DIR__)).'.env') {
49 if (! file_exists(__DIR__.'/../.env')) {
5050 return;
5151 }
5252
@@ -72,7 +72,13 @@ class Client
7272 ->getBody()
7373 ->getContents();
7474
75 return json_decode($content, true);
75 $body = json_decode($content, true);
76
77 if ($body && $body['data']) {
78 return $body['data'];
79 }
80
81 return $body;
7682 }
7783
7884 /**
tests/MeemaFavoriteTest.phpmodified+5-5
Changes to tests/MeemaFavoriteTest.php
@@ -20,7 +20,7 @@ it('can fetch specific group of favorites', function () {
2020 $favorites = $this->client->favorites()->get($ids);
2121
2222 $this->assertTrue(is_array($favorites));
23 $this->assertTrue(count($favorites['data']) === count($ids));
23 $this->assertTrue(count($favorites) === count($ids));
2424});
2525
2626it('can find a single favorite', function () {
@@ -29,7 +29,7 @@ it('can find a single favorite', function () {
2929 $favorites = $this->client->favorites()->find($id)->toArray();
3030
3131 $this->assertTrue(is_array($favorites));
32 $this->assertTrue(count($favorites) === 1);
32 $this->assertTrue(array_key_exists('id', $favorites));
3333});
3434
3535it('can create a favorite', function () {
@@ -38,7 +38,7 @@ it('can create a favorite', function () {
3838 $favorite = $this->client->favorites()->create($data);
3939
4040 $this->assertTrue(is_array($favorite));
41 $this->assertTrue($favorite['data']['name'] === $data['name']);
41 $this->assertTrue($favorite['name'] === $data['name']);
4242});
4343
4444it('can update a favorite', function () {
@@ -47,13 +47,13 @@ it('can update a favorite', function () {
4747 $favorites = $this->client->favorites()->update(7, $data);
4848
4949 $this->assertTrue(is_array($favorites));
50 $this->assertTrue($favorites['data']['name'] === $data['name']);
50 $this->assertTrue($favorites['name'] === $data['name']);
5151});
5252
5353it('can delete a favorite', function () {
5454 $favorites = $this->client->tags()->get();
5555
56 $favorites = array_reverse($favorites['data']);
56 $favorites = array_reverse($favorites);
5757 $response = $this->client->tags()->delete($favorites[0]['id']);
5858
5959 $this->assertTrue(is_null($response));
tests/MeemaFolderTest.phpmodified+10-10
Changes to tests/MeemaFolderTest.php
@@ -17,12 +17,12 @@ it('can fetch all folders', function () {
1717it('can search a folder', function () {
1818 $folder = $this->client->folders()->find(1)->toArray();
1919
20 $query = $folder['data']['name'];
20 $query = $folder['name'];
2121
2222 $folders = $this->client->folders()->search($query);
2323
2424 $this->assertTrue(is_array($folders));
25 $this->assertTrue(str_contains($folders['data'][0]['name'], $query));
25 $this->assertTrue(str_contains($folders[0]['name'], $query));
2626});
2727
2828it('can fetch specific group of folders', function () {
@@ -31,7 +31,7 @@ it('can fetch specific group of folders', function () {
3131 $folders = $this->client->folders()->get($ids);
3232
3333 $this->assertTrue(is_array($folders));
34 $this->assertTrue(count($folders['data']) === count($ids));
34 $this->assertTrue(count($folders) === count($ids));
3535});
3636
3737it('can find a single folder', function () {
@@ -40,7 +40,7 @@ it('can find a single folder', function () {
4040 $folders = $this->client->folders()->find($id)->toArray();
4141
4242 $this->assertTrue(is_array($folders));
43 $this->assertTrue(count($folders) === 1);
43 $this->assertTrue(array_key_exists('id', $folders));
4444});
4545
4646it('can create a folder', function () {
@@ -49,7 +49,7 @@ it('can create a folder', function () {
4949 $media = $this->client->folders()->create($name);
5050
5151 $this->assertTrue(is_array($media));
52 $this->assertTrue($media['data']['name'] === $name);
52 $this->assertTrue($media['name'] === $name);
5353});
5454
5555it('can update a folder', function () {
@@ -58,21 +58,21 @@ it('can update a folder', function () {
5858 $folders = $this->client->folders()->update(1, $name);
5959
6060 $this->assertTrue(is_array($folders));
61 $this->assertTrue($folders['data']['name'] === $name);
61 $this->assertTrue($folders['name'] === $name);
6262});
6363
6464it('can archive a folder', function () {
6565 $folders = $this->client->folders()->archive(1);
6666
6767 $this->assertTrue(is_array($folders));
68 $this->assertTrue((bool) $folders['data']['is_archived']);
68 $this->assertTrue((bool) $folders['is_archived']);
6969});
7070
7171it('can unarchive a folder', function () {
7272 $folders = $this->client->folders()->unarchive(1);
7373
7474 $this->assertTrue(is_array($folders));
75 $this->assertFalse((bool) $folders['data']['is_archived']);
75 $this->assertFalse((bool) $folders['is_archived']);
7676});
7777
7878it('can duplicate a folder', function () {
@@ -81,13 +81,13 @@ it('can duplicate a folder', function () {
8181 $duplicated = $folders->duplicate();
8282
8383 $this->assertTrue(is_array($duplicated));
84 $this->assertTrue($duplicated['data']['name'] === $folders->toArray()['data']['name']);
84 $this->assertTrue($duplicated['name'] === $folders->toArray()['name']);
8585});
8686
8787it('can delete a folder', function () {
8888 $folders = $this->client->folders()->get();
8989
90 $folders = array_reverse($folders['data']);
90 $folders = array_reverse($folders);
9191 $response = $this->client->folders()->delete($folders[0]['id']);
9292
9393 $this->assertTrue(is_null($response));
tests/MeemaMediaTest.phpmodified+11-11
Changes to tests/MeemaMediaTest.php
@@ -16,12 +16,12 @@ it('can be fetch all media', function () {
1616
1717it('can search a media', function () {
1818 $media = $this->client->media()->find(1)->toArray();
19 $query = $media['data']['name'];
19 $query = $media['name'];
2020
2121 $media = $this->client->media()->search($query);
2222
2323 $this->assertTrue(is_array($media));
24 $this->assertTrue(str_contains($media['data'][0]['name'], $query));
24 $this->assertTrue(str_contains($media[0]['name'], $query));
2525});
2626
2727it('can be fetch all media for a tag', function () {
@@ -50,7 +50,7 @@ it('can be fetch specific group of media', function () {
5050 $media = $this->client->media()->get($ids);
5151
5252 $this->assertTrue(is_array($media));
53 $this->assertTrue(count($media['data']) === count($ids));
53 $this->assertTrue(count($media) === count($ids));
5454});
5555
5656it('can find a single media', function () {
@@ -59,7 +59,7 @@ it('can find a single media', function () {
5959 $media = $this->client->media()->find($id)->toArray();
6060
6161 $this->assertTrue(is_array($media));
62 $this->assertTrue(count($media) === 1);
62 $this->assertTrue(array_key_exists('id', $media));
6363});
6464
6565it('can update a media', function () {
@@ -68,35 +68,35 @@ it('can update a media', function () {
6868 $media = $this->client->media()->update(1, $name);
6969
7070 $this->assertTrue(is_array($media));
71 $this->assertTrue($media['data']['name'] === $name);
71 $this->assertTrue($media['name'] === $name);
7272});
7373
7474it('can archive a media', function () {
7575 $media = $this->client->media()->archive(1);
7676
7777 $this->assertTrue(is_array($media));
78 $this->assertTrue((bool) $media['data']['is_archived']);
78 $this->assertTrue((bool) $media['is_archived']);
7979});
8080
8181it('can unarchive a media', function () {
8282 $media = $this->client->media()->unarchive(1);
8383
8484 $this->assertTrue(is_array($media));
85 $this->assertFalse((bool) $media['data']['is_archived']);
85 $this->assertFalse((bool) $media['is_archived']);
8686});
8787
8888it('can make a media private', function () {
8989 $media = $this->client->media()->makePrivate(1);
9090
9191 $this->assertTrue(is_array($media));
92 $this->assertFalse((bool) $media['data']['is_public']);
92 $this->assertFalse((bool) $media['is_public']);
9393});
9494
9595it('can make a media public', function () {
9696 $media = $this->client->media()->makePublic(1);
9797
9898 $this->assertTrue(is_array($media));
99 $this->assertTrue((bool) $media['data']['is_public']);
99 $this->assertTrue((bool) $media['is_public']);
100100});
101101
102102it('can duplicate a media', function () {
@@ -105,13 +105,13 @@ it('can duplicate a media', function () {
105105 $duplicated = $this->client->media()->duplicate(1);
106106
107107 $this->assertTrue(is_array($duplicated));
108 $this->assertTrue($duplicated['data']['name'] === $media->toArray()['data']['name']);
108 $this->assertTrue($duplicated['name'] === $media->toArray()['name']);
109109});
110110
111111it('can delete a media', function () {
112112 $media = $this->client->media()->get();
113113
114 $media = array_reverse($media['data']);
114 $media = array_reverse($media);
115115 $response = $this->client->media()->delete((int) $media[0]['media_id']);
116116
117117 $this->assertTrue(is_null($response));
tests/MeemaTagTest.phpmodified+6-6
Changes to tests/MeemaTagTest.php
@@ -20,7 +20,7 @@ it('can fetch specific group of tags', function () {
2020 $tags = $this->client->tags()->get($ids);
2121
2222 $this->assertTrue(is_array($tags));
23 $this->assertTrue(count($tags['data']) === count($ids));
23 $this->assertTrue(count($tags) === count($ids));
2424});
2525
2626it('can find a single tag', function () {
@@ -29,7 +29,7 @@ it('can find a single tag', function () {
2929 $tags = $this->client->tags()->find($id)->toArray();
3030
3131 $this->assertTrue(is_array($tags));
32 $this->assertTrue(count($tags) === 1);
32 $this->assertTrue(array_key_exists('id', $tags));
3333});
3434
3535it('can update a tag', function () {
@@ -38,13 +38,13 @@ it('can update a tag', function () {
3838 $tags = $this->client->tags()->update(7, $color);
3939
4040 $this->assertTrue(is_array($tags));
41 $this->assertTrue($tags['data']['color'] === $color);
41 $this->assertTrue($tags['color'] === $color);
4242});
4343
4444it('can delete a tag', function () {
4545 $tags = $this->client->tags()->get();
4646
47 $tags = array_reverse($tags['data']);
47 $tags = array_reverse($tags);
4848 $response = $this->client->tags()->delete($tags[0]['id']);
4949
5050 $this->assertTrue(is_null($response));
@@ -55,7 +55,7 @@ it('can fetch all media tags', function () {
5555 $tags = $media->tags()->get();
5656
5757 $this->assertTrue(is_array($tags));
58 $this->assertTrue(count($tags['data'][0]) > 0);
58 $this->assertTrue(count($tags[0]) > 0);
5959});
6060
6161it('can fetch all folder tags', function () {
@@ -63,5 +63,5 @@ it('can fetch all folder tags', function () {
6363 $tags = $folder->tags()->get();
6464
6565 $this->assertTrue(is_array($tags));
66 $this->assertTrue(count($tags['data'][0]) > 0);
66 $this->assertTrue(count($tags[0]) > 0);
6767});