test element domain
This commit is contained in:
parent
72f0a6bccb
commit
52a2bd6e6b
1 changed files with 49 additions and 0 deletions
49
backend/tests/Unit/Element/ElementTest.php
Normal file
49
backend/tests/Unit/Element/ElementTest.php
Normal file
|
|
@ -0,0 +1,49 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Tests\Unit\Element;
|
||||||
|
|
||||||
|
use App\Element\Element;
|
||||||
|
use App\Set\Set;
|
||||||
|
use App\Shared\ValueObject\EmailAddress;
|
||||||
|
use App\User\User;
|
||||||
|
use PHPUnit\Framework\TestCase;
|
||||||
|
|
||||||
|
class ElementTest extends TestCase
|
||||||
|
{
|
||||||
|
public function test_it_exposes_its_hierarchical_identity(): void
|
||||||
|
{
|
||||||
|
$creator = new User(
|
||||||
|
id: 7,
|
||||||
|
email: new EmailAddress('creator@example.com'),
|
||||||
|
passwordHash: 'hashed-password',
|
||||||
|
);
|
||||||
|
$set = new Set(
|
||||||
|
id: 11,
|
||||||
|
name: 'Bible',
|
||||||
|
creator: $creator,
|
||||||
|
);
|
||||||
|
$parentElement = new Element(
|
||||||
|
id: 21,
|
||||||
|
name: 'Genesis',
|
||||||
|
kind: 'book',
|
||||||
|
set: $set,
|
||||||
|
parentElement: null,
|
||||||
|
position: 1,
|
||||||
|
);
|
||||||
|
$element = new Element(
|
||||||
|
id: 22,
|
||||||
|
name: 'Genesis',
|
||||||
|
kind: 'portion',
|
||||||
|
set: $set,
|
||||||
|
parentElement: $parentElement,
|
||||||
|
position: 2,
|
||||||
|
);
|
||||||
|
|
||||||
|
$this->assertSame(22, $element->getId());
|
||||||
|
$this->assertSame('Genesis', $element->getName());
|
||||||
|
$this->assertSame('portion', $element->getKind());
|
||||||
|
$this->assertSame($set, $element->getSet());
|
||||||
|
$this->assertSame($parentElement, $element->getParentElement());
|
||||||
|
$this->assertSame(2, $element->getPosition());
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue