diff --git a/src/Entities/User.php b/src/Entities/User.php index 2c6339718..f4a6ef8ad 100644 --- a/src/Entities/User.php +++ b/src/Entities/User.php @@ -126,7 +126,7 @@ public function getIdentities(string $type = 'all'): array return $identities; } - public function setIdentities(array $identities): void + public function setIdentities(?array $identities): void { $this->identities = $identities; } diff --git a/tests/Unit/UserTest.php b/tests/Unit/UserTest.php index 8397846af..36f45f71b 100644 --- a/tests/Unit/UserTest.php +++ b/tests/Unit/UserTest.php @@ -65,6 +65,17 @@ public function testGetIdentitiesByType(): void $this->assertEmpty($this->user->getIdentities('foo')); } + public function testSetIdentitiesNullReloadsIdentities(): void + { + fake(UserIdentityModel::class, ['user_id' => $this->user->id, 'type' => 'password']); + $this->assertCount(1, $this->user->identities); + + fake(UserIdentityModel::class, ['user_id' => $this->user->id, 'type' => 'access_token']); + $this->user->identities = null; + + $this->assertCount(2, $this->user->getIdentities()); + } + public function testModelFindAllWithIdentities(): void { fake(UserModel::class);