Version 1.0.0

This commit is contained in:
diffhead
2025-11-16 01:51:25 +04:00
committed by Viktor Smagin
commit 8cb7f400fd
43 changed files with 4462 additions and 0 deletions

57
tests/BuilderTest.php Normal file
View File

@@ -0,0 +1,57 @@
<?php
declare(strict_types=1);
namespace Diffhead\PHP\DataEnrichmentKit\Tests;
use Diffhead\PHP\DataEnrichmentKit\Builder;
use Diffhead\PHP\DataEnrichmentKit\Exception\TargetIsNull;
use PHPUnit\Framework\Attributes\CoversClass;
use PHPUnit\Framework\Attributes\CoversMethod;
use PHPUnit\Framework\TestCase;
#[CoversClass(Builder::class)]
#[CoversMethod(Builder::class, 'withTarget')]
#[CoversMethod(Builder::class, 'item')]
#[CoversMethod(Builder::class, 'target')]
#[CoversMethod(Builder::class, 'build')]
class BuilderTest extends TestCase
{
public function testBuildingWithTarget(): void
{
$builder = Builder::withTarget('entity', 'field');
$this->assertInstanceOf(Builder::class, $builder);
}
public function testItemsInsideTheRequest(): void
{
$builder = new Builder();
$builder->item('key', 'alias');
$request = $builder->target('entity', 'field')->build();
$this->assertCount(1, $request->items()->getIterator());
$this->assertEquals('key', $request->items()->getIterator()[0]->key());
$this->assertEquals('alias', $request->items()->getIterator()[0]->alias());
}
public function testTargetInsideTheRequest(): void
{
$builder = new Builder();
$builder->target('entity', 'field');
$request = $builder->build();
$this->assertEquals('entity', $request->target()->entity());
$this->assertEquals('field', $request->target()->field());
}
public function testBuildThrowsExceptionWhenTargetIsNull(): void
{
$this->expectException(TargetIsNull::class);
$builder = new Builder();
$builder->build();
}
}