39 lines
1 KiB
PHP
39 lines
1 KiB
PHP
<?php
|
|
|
|
use App\Enums\UserOrigin;
|
|
use App\Models\Hub;
|
|
use App\Models\Partner;
|
|
use App\Models\User;
|
|
|
|
test('user can have a hub', function () {
|
|
$hub = Hub::factory()->create();
|
|
$user = User::factory()->create(['hub_id' => $hub->id]);
|
|
|
|
expect($user->hub->id)->toBe($hub->id);
|
|
});
|
|
|
|
test('user can have an origin', function () {
|
|
$user = User::factory()->create(['origin' => 'style2own']);
|
|
|
|
expect($user->origin)->toBe(UserOrigin::Style2Own);
|
|
});
|
|
|
|
test('user origin casts stileigentum correctly', function () {
|
|
$user = User::factory()->create(['origin' => 'stileigentum']);
|
|
|
|
expect($user->origin)->toBe(UserOrigin::StilEigentum);
|
|
expect($user->origin->tonality())->toBe('sie');
|
|
});
|
|
|
|
test('user origin can be null', function () {
|
|
$user = User::factory()->create(['origin' => null]);
|
|
|
|
expect($user->origin)->toBeNull();
|
|
});
|
|
|
|
test('user belongs to partner', function () {
|
|
$partner = Partner::factory()->create();
|
|
$user = User::factory()->create(['partner_id' => $partner->id]);
|
|
|
|
expect($user->partner->id)->toBe($partner->id);
|
|
});
|