koel/tests/Integration/Casts/UserPreferencesCastTest.php

32 lines
824 B
PHP
Raw Normal View History

<?php
namespace Tests\Integration\Casts;
use App\Values\UserPreferences;
use Tests\TestCase;
2024-01-11 12:41:33 +00:00
use function Tests\create_user;
class UserPreferencesCastTest extends TestCase
{
public function testCast(): void
{
2024-01-11 12:41:33 +00:00
$user = create_user([
'preferences' => [
'lastfm_session_key' => 'foo',
],
]);
self::assertInstanceOf(UserPreferences::class, $user->preferences);
self::assertSame('foo', $user->preferences->lastFmSessionKey);
$user->preferences->lastFmSessionKey = 'bar';
$user->save();
self::assertSame('bar', $user->refresh()->preferences->lastFmSessionKey);
$user->preferences->lastFmSessionKey = null;
$user->save();
self::assertNull($user->refresh()->preferences->lastFmSessionKey);
}
}