Skip to content

Commit

Permalink
issue-135 [Toggle PSR-11 Factories] Add phpdoc to the returned value …
Browse files Browse the repository at this point in the history
…from container
  • Loading branch information
pheaturebot committed Apr 22, 2021
1 parent 0b6d267 commit 70bf494
Show file tree
Hide file tree
Showing 2 changed files with 37 additions and 0 deletions.
6 changes: 6 additions & 0 deletions src/RemoveStrategyFactory.php
Expand Up @@ -14,7 +14,13 @@ public function __invoke(ContainerInterface $container): RemoveStrategy
{
/** @var FeatureRepository $featureRepository */
$featureRepository = $container->get(FeatureRepository::class);
return self::create(
$featureRepository
);
}

public static function create(FeatureRepository $featureRepository): RemoveStrategy
{
return new RemoveStrategy($featureRepository);
}
}
31 changes: 31 additions & 0 deletions test/RemoveStrategyFactoryTest.php
@@ -0,0 +1,31 @@
<?php

namespace Pheature\Test\Crud\Psr11\Toggle;

use Pheature\Core\Toggle\Write\FeatureRepository;
use Pheature\Crud\Psr11\Toggle\RemoveStrategyFactory;
use Pheature\Crud\Toggle\Handler\RemoveStrategy;
use PHPUnit\Framework\TestCase;
use Psr\Container\ContainerInterface;

class RemoveStrategyFactoryTest extends TestCase
{
public function testItShouldCreateARemoveStrategyFromInvokable(): void
{
$mockedContainer = $this->createConfiguredMock(ContainerInterface::class, [
'get' => $this->createMock(FeatureRepository::class)
]);

$factory = new RemoveStrategyFactory();
$actual = $factory->__invoke($mockedContainer);

self::assertInstanceOf(RemoveStrategy::class, $actual);
}

public function testItShouldCreateARemoveStrategyFromCreate(): void
{
$actual = RemoveStrategyFactory::create($this->createMock(FeatureRepository::class));

self::assertInstanceOf(RemoveStrategy::class, $actual);
}
}

0 comments on commit 70bf494

Please sign in to comment.