2FAuth/tests/Unit/GroupModelTest.php

60 lines
1.3 KiB
PHP
Raw Normal View History

2021-11-30 17:39:33 +01:00
<?php
namespace Tests\Unit;
use App\Events\GroupDeleted;
2022-11-22 15:15:52 +01:00
use App\Events\GroupDeleting;
2021-12-02 13:15:53 +01:00
use App\Models\Group;
use App\Models\TwoFAccount;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
2023-08-01 11:28:27 +02:00
use PHPUnit\Framework\Attributes\CoversClass;
2021-11-30 17:39:33 +01:00
use Tests\ModelTestCase;
/**
2023-08-01 11:28:27 +02:00
* GroupModelTest test class
2021-11-30 17:39:33 +01:00
*/
2023-08-01 11:28:27 +02:00
#[CoversClass(Group::class)]
2021-11-30 17:39:33 +01:00
class GroupModelTest extends ModelTestCase
{
/**
* @test
*/
public function test_model_configuration()
{
$this->runConfigurationAssertions(
new Group(),
['name'],
['created_at', 'updated_at'],
['*'],
[],
['id' => 'int', 'twofaccounts_count' => 'integer'],
[
'deleting' => GroupDeleting::class,
2023-03-10 22:59:46 +01:00
'deleted' => GroupDeleted::class,
]
2021-11-30 17:39:33 +01:00
);
}
/**
* @test
*/
public function test_twofaccounts_relation()
2021-11-30 17:39:33 +01:00
{
2022-11-22 15:15:52 +01:00
$group = new Group();
2021-11-30 17:39:33 +01:00
$accounts = $group->twofaccounts();
$this->assertHasManyRelation($accounts, $group, new TwoFAccount());
}
/**
* @test
*/
public function test_user_relation()
{
2023-03-10 22:59:46 +01:00
$model = new Group;
$relation = $model->user();
$this->assertInstanceOf(BelongsTo::class, $relation);
$this->assertEquals('user_id', $relation->getForeignKeyName());
}
2022-11-22 15:15:52 +01:00
}