+ public function test_migrate_users_on_delete_works()
+ {
+ $roleA = Role::query()->create(['display_name' => 'Delete Test A']);
+ $roleB = Role::query()->create(['display_name' => 'Delete Test B']);
+ $this->user->attachRole($roleB);
+
+ $this->assertCount(0, $roleA->users()->get());
+ $this->assertCount(1, $roleB->users()->get());
+
+ $deletePage = $this->asAdmin()->get("/settings/roles/delete/{$roleB->id}");
+ $deletePage->seeElement('select[name=migrate_role_id]');
+ $this->asAdmin()->delete("/settings/roles/delete/{$roleB->id}", [
+ 'migrate_role_id' => $roleA->id,
+ ]);
+
+ $this->assertCount(1, $roleA->users()->get());
+ $this->assertEquals($this->user->id, $roleA->users()->first()->id);
+ }
+