use BookStack\Entities\Models\Book;
use BookStack\Entities\Models\Deletion;
-use BookStack\Entities\Models\Page;
use Illuminate\Support\Collection;
use Tests\TestCase;
public function test_settings_manage_permission_needed_for_all_endpoints()
{
- $editor = $this->getEditor();
- $this->giveUserPermissions($editor, ['settings-manage']);
+ $editor = $this->users->editor();
+ $this->permissions->grantUserRolePermissions($editor, ['settings-manage']);
$this->actingAs($editor);
foreach ($this->endpointMap as [$method, $uri]) {
public function test_restrictions_manage_all_permission_needed_for_all_endpoints()
{
- $editor = $this->getEditor();
- $this->giveUserPermissions($editor, ['restrictions-manage-all']);
+ $editor = $this->users->editor();
+ $this->permissions->grantUserRolePermissions($editor, ['restrictions-manage-all']);
$this->actingAs($editor);
foreach ($this->endpointMap as [$method, $uri]) {
public function test_index_endpoint_returns_expected_page()
{
- $admin = $this->getAdmin();
+ $admin = $this->users->admin();
- $page = Page::query()->first();
- $book = Book::query()->first();
+ $page = $this->entities->page();
+ $book = $this->entities->book();
$this->actingAs($admin)->delete($page->getUrl());
$this->delete($book->getUrl());
public function test_index_endpoint_returns_children_count()
{
- $admin = $this->getAdmin();
+ $admin = $this->users->admin();
$book = Book::query()->whereHas('pages')->whereHas('chapters')->withCount(['pages', 'chapters'])->first();
$this->actingAs($admin)->delete($book->getUrl());
public function test_index_endpoint_returns_parent()
{
- $admin = $this->getAdmin();
- $page = Page::query()->whereHas('chapter')->with('chapter')->first();
+ $admin = $this->users->admin();
+ $page = $this->entities->pageWithinChapter();
$this->actingAs($admin)->delete($page->getUrl());
$deletion = Deletion::query()->orderBy('id')->first();
public function test_restore_endpoint()
{
- $page = Page::query()->first();
+ $page = $this->entities->page();
$this->asAdmin()->delete($page->getUrl());
$page->refresh();
public function test_destroy_endpoint()
{
- $page = Page::query()->first();
+ $page = $this->entities->page();
$this->asAdmin()->delete($page->getUrl());
$page->refresh();