<?php namespace Tests;
+use BookStack\Entity;
use BookStack\Role;
+use BookStack\Services\PermissionService;
use Illuminate\Contracts\Console\Kernel;
use Illuminate\Foundation\Testing\DatabaseTransactions;
use Laravel\BrowserKitTesting\TestCase;
private $admin;
private $editor;
+ public function tearDown()
+ {
+ \DB::disconnect();
+ parent::tearDown();
+ }
+
/**
* Creates the application.
*
{
if ($updaterUser === false) $updaterUser = $creatorUser;
$book = factory(\BookStack\Book::class)->create(['created_by' => $creatorUser->id, 'updated_by' => $updaterUser->id]);
- $chapter = factory(\BookStack\Chapter::class)->create(['created_by' => $creatorUser->id, 'updated_by' => $updaterUser->id]);
- $page = factory(\BookStack\Page::class)->create(['created_by' => $creatorUser->id, 'updated_by' => $updaterUser->id, 'book_id' => $book->id]);
- $book->chapters()->saveMany([$chapter]);
- $chapter->pages()->saveMany([$page]);
- $restrictionService = $this->app[\BookStack\Services\PermissionService::class];
+ $chapter = factory(\BookStack\Chapter::class)->create(['created_by' => $creatorUser->id, 'updated_by' => $updaterUser->id, 'book_id' => $book->id]);
+ $page = factory(\BookStack\Page::class)->create(['created_by' => $creatorUser->id, 'updated_by' => $updaterUser->id, 'book_id' => $book->id, 'chapter_id' => $chapter->id]);
+ $restrictionService = $this->app[PermissionService::class];
$restrictionService->buildJointPermissionsForEntity($book);
return [
'book' => $book,
];
}
+ /**
+ * Helper for updating entity permissions.
+ * @param Entity $entity
+ */
+ protected function updateEntityPermissions(Entity $entity)
+ {
+ $restrictionService = $this->app[PermissionService::class];
+ $restrictionService->buildJointPermissionsForEntity($entity);
+ }
+
/**
* Quick way to create a new user
* @param array $attributes