fix: DockerSecretsResolver - don't normalize absolute paths like /var/www/html/...
Some checks failed
Deploy Application / deploy (push) Has been cancelled
Some checks failed
Deploy Application / deploy (push) Has been cancelled
This commit is contained in:
@@ -0,0 +1,80 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Tests\Framework\Attributes\Execution;
|
||||
|
||||
use App\Framework\Attributes\Execution\CallbackMetadata;
|
||||
use App\Framework\Attributes\Execution\CallbackType;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
final class CallbackMetadataTest extends TestCase
|
||||
{
|
||||
public function testFromHandler(): void
|
||||
{
|
||||
$metadata = CallbackMetadata::fromHandler('MyHandler', ['arg1', 'arg2']);
|
||||
|
||||
$this->assertEquals(CallbackType::HANDLER, $metadata->callbackType);
|
||||
$this->assertEquals('MyHandler', $metadata->class);
|
||||
$this->assertNull($metadata->method);
|
||||
$this->assertEquals(['arg1', 'arg2'], $metadata->args);
|
||||
}
|
||||
|
||||
public function testFromCallableString(): void
|
||||
{
|
||||
$metadata = CallbackMetadata::fromCallable('MyClass::myMethod');
|
||||
|
||||
$this->assertEquals(CallbackType::STATIC_METHOD, $metadata->callbackType);
|
||||
$this->assertEquals('MyClass', $metadata->class);
|
||||
$this->assertEquals('myMethod', $metadata->method);
|
||||
$this->assertEquals([], $metadata->args);
|
||||
}
|
||||
|
||||
public function testFromCallableArray(): void
|
||||
{
|
||||
$metadata = CallbackMetadata::fromCallable(['MyClass', 'myMethod']);
|
||||
|
||||
$this->assertEquals(CallbackType::STATIC_METHOD, $metadata->callbackType);
|
||||
$this->assertEquals('MyClass', $metadata->class);
|
||||
$this->assertEquals('myMethod', $metadata->method);
|
||||
}
|
||||
|
||||
public function testFromFactory(): void
|
||||
{
|
||||
$metadata = CallbackMetadata::fromFactory('MyFactory', 'create', ['param1']);
|
||||
|
||||
$this->assertEquals(CallbackType::FACTORY, $metadata->callbackType);
|
||||
$this->assertEquals('MyFactory', $metadata->class);
|
||||
$this->assertEquals('create', $metadata->method);
|
||||
$this->assertEquals(['param1'], $metadata->args);
|
||||
}
|
||||
|
||||
public function testToArrayAndFromArray(): void
|
||||
{
|
||||
$original = CallbackMetadata::fromHandler('MyHandler', ['arg1']);
|
||||
|
||||
$array = $original->toArray();
|
||||
$restored = CallbackMetadata::fromArray($array);
|
||||
|
||||
$this->assertEquals($original->callbackType, $restored->callbackType);
|
||||
$this->assertEquals($original->class, $restored->class);
|
||||
$this->assertEquals($original->method, $restored->method);
|
||||
$this->assertEquals($original->args, $restored->args);
|
||||
}
|
||||
|
||||
public function testIsCacheable(): void
|
||||
{
|
||||
$handler = CallbackMetadata::fromHandler('MyHandler');
|
||||
$this->assertTrue($handler->isCacheable());
|
||||
|
||||
$callable = CallbackMetadata::fromCallable('MyClass::method');
|
||||
$this->assertTrue($callable->isCacheable());
|
||||
|
||||
$factory = CallbackMetadata::fromFactory('MyFactory', 'create');
|
||||
$this->assertTrue($factory->isCacheable());
|
||||
|
||||
$closure = new CallbackMetadata(CallbackType::CLOSURE, '');
|
||||
$this->assertFalse($closure->isCacheable());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user