]> BookStack Code Mirror - bookstack/blobdiff - tests/Api/BooksApiTest.php
API: Added cover to book/shelf list endpoints
[bookstack] / tests / Api / BooksApiTest.php
index 0de98dc323bf5ab14f8630075696a97a3f7e6118..084cb59bd5c633a11a512aa2814b2a9a95f8b996 100644 (file)
@@ -3,6 +3,7 @@
 namespace Tests\Api;
 
 use BookStack\Entities\Models\Book;
+use BookStack\Entities\Repos\BaseRepo;
 use Carbon\Carbon;
 use Illuminate\Support\Facades\DB;
 use Tests\TestCase;
@@ -27,6 +28,28 @@ class BooksApiTest extends TestCase
                 'owned_by' => $firstBook->owned_by,
                 'created_by' => $firstBook->created_by,
                 'updated_by' => $firstBook->updated_by,
+                'cover' => null,
+            ],
+        ]]);
+    }
+
+    public function test_index_endpoint_includes_cover_if_set()
+    {
+        $this->actingAsApiEditor();
+        $book = $this->entities->book();
+
+        $baseRepo = $this->app->make(BaseRepo::class);
+        $image = $this->files->uploadedImage('book_cover');
+        $baseRepo->updateCoverImage($book, $image);
+
+        $resp = $this->getJson($this->baseEndpoint . '?filter[id]=' . $book->id);
+        $resp->assertJson(['data' => [
+            [
+                'id'   => $book->id,
+                'cover' => [
+                    'id' => $book->cover->id,
+                    'url' => $book->cover->url,
+                ],
             ],
         ]]);
     }