X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/03ad288aaa55a0bd0aa143711aa07d0f1801d604..refs/pull/5115/head:/tests/User/UserManagementTest.php diff --git a/tests/User/UserManagementTest.php b/tests/User/UserManagementTest.php index 38447d293..93d35f5d0 100644 --- a/tests/User/UserManagementTest.php +++ b/tests/User/UserManagementTest.php @@ -2,22 +2,19 @@ namespace Tests\User; -use BookStack\Actions\ActivityType; -use BookStack\Auth\Access\UserInviteService; -use BookStack\Auth\Role; -use BookStack\Auth\User; +use BookStack\Access\UserInviteService; +use BookStack\Activity\ActivityType; use BookStack\Uploads\Image; +use BookStack\Users\Models\Role; +use BookStack\Users\Models\User; use Illuminate\Support\Facades\Hash; use Illuminate\Support\Str; use Mockery\MockInterface; use RuntimeException; use Tests\TestCase; -use Tests\Uploads\UsesImages; class UserManagementTest extends TestCase { - use UsesImages; - public function test_user_creation() { /** @var User $user */ @@ -148,6 +145,7 @@ class UserManagementTest extends TestCase $resp = $this->asEditor()->get("settings/users/{$editor->id}/delete"); $resp->assertSee('Migrate Ownership'); + $this->withHtml($resp)->assertElementExists('form input[name="new_owner_id"]'); $resp->assertSee('new_owner_id'); } @@ -164,6 +162,16 @@ class UserManagementTest extends TestCase ]); } + public function test_delete_with_empty_owner_migration_id_works() + { + $user = $this->users->editor(); + + $resp = $this->asAdmin()->delete("settings/users/{$user->id}", ['new_owner_id' => '']); + $resp->assertRedirect('/settings/users'); + $this->assertActivityExists(ActivityType::USER_DELETE); + $this->assertSessionHas('success'); + } + public function test_delete_removes_user_preferences() { $editor = $this->users->editor(); @@ -183,7 +191,7 @@ class UserManagementTest extends TestCase public function test_guest_profile_shows_limited_form() { - $guest = User::getDefault(); + $guest = $this->users->guest(); $resp = $this->asAdmin()->get('/settings/users/' . $guest->id); $resp->assertSee('Guest'); $this->withHtml($resp)->assertElementNotExists('#password'); @@ -191,7 +199,7 @@ class UserManagementTest extends TestCase public function test_guest_profile_cannot_be_deleted() { - $guestUser = User::getDefault(); + $guestUser = $this->users->guest(); $resp = $this->asAdmin()->get('/settings/users/' . $guestUser->id . '/delete'); $resp->assertSee('Delete User'); $resp->assertSee('Guest'); @@ -207,7 +215,7 @@ class UserManagementTest extends TestCase { $langs = ['en', 'fr', 'hr']; foreach ($langs as $lang) { - config()->set('app.locale', $lang); + config()->set('app.default_locale', $lang); $resp = $this->asAdmin()->get('/settings/users/create'); $this->withHtml($resp)->assertElementExists('select[name="language"] option[value="' . $lang . '"][selected]'); } @@ -282,7 +290,7 @@ class UserManagementTest extends TestCase public function test_user_avatar_update_and_reset() { $user = $this->users->viewer(); - $avatarFile = $this->getTestImage('avatar-icon.png'); + $avatarFile = $this->files->uploadedImage('avatar-icon.png'); $this->assertEquals(0, $user->image_id);