X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/58fa7679bccafd00f9a50bcd4a87e96876331b03..refs/pull/5280/head:/tests/Commands/RegeneratePermissionsCommandTest.php diff --git a/tests/Commands/RegeneratePermissionsCommandTest.php b/tests/Commands/RegeneratePermissionsCommandTest.php index d5b34ba17..75c6c1b38 100644 --- a/tests/Commands/RegeneratePermissionsCommandTest.php +++ b/tests/Commands/RegeneratePermissionsCommandTest.php @@ -1,7 +1,10 @@ -entities->page(); + $editor = $this->users->editor(); + $role = $editor->roles()->first(); + $this->permissions->addEntityPermission($page, ['view'], $role); JointPermission::query()->truncate(); - $page = Page::first(); $this->assertDatabaseMissing('joint_permissions', ['entity_id' => $page->id]); - $exitCode = \Artisan::call('bookstack:regenerate-permissions'); + $exitCode = Artisan::call('bookstack:regenerate-permissions'); $this->assertTrue($exitCode === 0, 'Command executed successfully'); - DB::beginTransaction(); - $this->assertDatabaseHas('joint_permissions', ['entity_id' => $page->id]); + $this->assertDatabaseHas('joint_permissions', [ + 'entity_id' => $page->id, + 'entity_type' => 'page', + 'role_id' => $role->id, + 'status' => 3, // Explicit allow + ]); + + $page->permissions()->delete(); + $page->rebuildPermissions(); + + DB::beginTransaction(); } -} \ No newline at end of file +}