diff --git a/tests/Permissions/EntityPermissionsTest.php b/tests/Permissions/EntityPermissionsTest.php index 6b99ba365..4b613b49c 100644 --- a/tests/Permissions/EntityPermissionsTest.php +++ b/tests/Permissions/EntityPermissionsTest.php @@ -8,6 +8,7 @@ use BookStack\Entities\Models\Bookshelf; use BookStack\Entities\Models\Chapter; use BookStack\Entities\Models\Entity; use BookStack\Entities\Models\Page; +use Exception; use Illuminate\Support\Str; use Tests\TestCase; @@ -653,4 +654,22 @@ class EntityPermissionsTest extends TestCase ]); $resp->assertRedirect($book->getUrl('/page/test-page')); } + + public function test_book_permissions_can_be_generated_without_error_if_child_chapter_is_in_recycle_bin() + { + $book = $this->entities->bookHasChaptersAndPages(); + /** @var Chapter $chapter */ + $chapter = $book->chapters()->first(); + + $this->asAdmin()->delete($chapter->getUrl()); + + $error = null; + try { + $this->entities->setPermissions($book, ['view'], []); + } catch (Exception $e) { + $error = $e; + } + + $this->assertNull($error); + } }