diff options
| author | Greg Roach <fisharebest@gmail.com> | 2021-05-03 17:40:10 +0100 |
|---|---|---|
| committer | Greg Roach <fisharebest@gmail.com> | 2021-05-03 17:40:46 +0100 |
| commit | 56afe05fa72eb037740c3a05c02828a7ba30f9a9 (patch) | |
| tree | 86fa9a78fe37bc70a59b7893eea1e2b6555040d4 /tests | |
| parent | bd606c87b73e85df2cb4e759c1c3a6cf005799fb (diff) | |
| download | webtrees-56afe05fa72eb037740c3a05c02828a7ba30f9a9.tar.gz webtrees-56afe05fa72eb037740c3a05c02828a7ba30f9a9.tar.bz2 webtrees-56afe05fa72eb037740c3a05c02828a7ba30f9a9.zip | |
Move PSR17 factories to the registry
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/TestCase.php | 65 | ||||
| -rw-r--r-- | tests/app/Http/Middleware/CheckCsrfTest.php | 6 | ||||
| -rw-r--r-- | tests/app/WebtreesTest.php | 4 |
3 files changed, 13 insertions, 62 deletions
diff --git a/tests/TestCase.php b/tests/TestCase.php index b2e4cfee0b..d7473b4daf 100644 --- a/tests/TestCase.php +++ b/tests/TestCase.php @@ -22,22 +22,6 @@ namespace Fisharebest\Webtrees; use Aura\Router\Route; use Aura\Router\RouterContainer; use Fig\Http\Message\RequestMethodInterface; -use Fisharebest\Webtrees\Factories\CacheFactory; -use Fisharebest\Webtrees\Factories\FamilyFactory; -use Fisharebest\Webtrees\Factories\FilesystemFactory; -use Fisharebest\Webtrees\Factories\ElementFactory; -use Fisharebest\Webtrees\Factories\GedcomRecordFactory; -use Fisharebest\Webtrees\Factories\HeaderFactory; -use Fisharebest\Webtrees\Factories\IndividualFactory; -use Fisharebest\Webtrees\Factories\LocationFactory; -use Fisharebest\Webtrees\Factories\MediaFactory; -use Fisharebest\Webtrees\Factories\NoteFactory; -use Fisharebest\Webtrees\Factories\RepositoryFactory; -use Fisharebest\Webtrees\Factories\SlugFactory; -use Fisharebest\Webtrees\Factories\SourceFactory; -use Fisharebest\Webtrees\Factories\SubmissionFactory; -use Fisharebest\Webtrees\Factories\SubmitterFactory; -use Fisharebest\Webtrees\Factories\XrefFactory; use Fisharebest\Webtrees\Http\RequestHandlers\GedcomLoad; use Fisharebest\Webtrees\Http\Routes\WebRoutes; use Fisharebest\Webtrees\Module\ModuleThemeInterface; @@ -47,14 +31,10 @@ use Fisharebest\Webtrees\Services\ModuleService; use Fisharebest\Webtrees\Services\TimeoutService; use Fisharebest\Webtrees\Services\TreeService; use Illuminate\Database\Capsule\Manager as DB; -use Nyholm\Psr7\Factory\Psr17Factory; -use Psr\Http\Message\ResponseFactoryInterface; -use Psr\Http\Message\ServerRequestFactoryInterface; use Psr\Http\Message\ServerRequestInterface; use Psr\Http\Message\StreamFactoryInterface; use Psr\Http\Message\UploadedFileFactoryInterface; use Psr\Http\Message\UploadedFileInterface; -use Psr\Http\Message\UriFactoryInterface; use function app; use function basename; @@ -81,30 +61,8 @@ class TestCase extends \PHPUnit\Framework\TestCase { parent::setUpBeforeClass(); - // Use nyholm as our PSR7 factory - app()->bind(ResponseFactoryInterface::class, Psr17Factory::class); - app()->bind(ServerRequestFactoryInterface::class, Psr17Factory::class); - app()->bind(StreamFactoryInterface::class, Psr17Factory::class); - app()->bind(UploadedFileFactoryInterface::class, Psr17Factory::class); - app()->bind(UriFactoryInterface::class, Psr17Factory::class); - - // Register the factories - Registry::cache(new CacheFactory()); - Registry::familyFactory(new FamilyFactory()); - Registry::filesystem(new FilesystemFactory()); - Registry::elementFactory(new ElementFactory()); - Registry::gedcomRecordFactory(new GedcomRecordFactory()); - Registry::headerFactory(new HeaderFactory()); - Registry::individualFactory(new IndividualFactory()); - Registry::locationFactory(new LocationFactory()); - Registry::mediaFactory(new MediaFactory()); - Registry::noteFactory(new NoteFactory()); - Registry::repositoryFactory(new RepositoryFactory()); - Registry::slugFactory(new SlugFactory()); - Registry::sourceFactory(new SourceFactory()); - Registry::submissionFactory(new SubmissionFactory()); - Registry::submitterFactory(new SubmitterFactory()); - Registry::xrefFactory(new XrefFactory()); + $webtrees = new Webtrees(); + $webtrees->registerFactories(); app()->bind(ModuleThemeInterface::class, WebtreesTheme::class); @@ -177,13 +135,9 @@ class TestCase extends \PHPUnit\Framework\TestCase array $files = [], array $attributes = [] ): ServerRequestInterface { - /** @var ServerRequestFactoryInterface */ - $server_request_factory = app(ServerRequestFactoryInterface::class); - $uri = 'https://webtrees.test/index.php?' . http_build_query($query); - /** @var ServerRequestInterface $request */ - $request = $server_request_factory + $request = Registry::serverRequestFactory() ->createServerRequest($method, $uri) ->withQueryParams($query) ->withParsedBody($params) @@ -243,7 +197,7 @@ class TestCase extends \PHPUnit\Framework\TestCase { $tree_service = new TreeService(); $tree = $tree_service->create(basename($gedcom_file), basename($gedcom_file)); - $stream = app(StreamFactoryInterface::class)->createStreamFromFile(__DIR__ . '/data/' . $gedcom_file); + $stream = Registry::streamFactory()->createStreamFromFile(__DIR__ . '/data/' . $gedcom_file); $tree_service->importGedcomFile($tree, $stream, $gedcom_file); @@ -270,17 +224,12 @@ class TestCase extends \PHPUnit\Framework\TestCase */ protected function createUploadedFile(string $filename, string $mime_type): UploadedFileInterface { - /** @var StreamFactoryInterface */ - $stream_factory = app(StreamFactoryInterface::class); - - /** @var UploadedFileFactoryInterface */ - $uploaded_file_factory = app(UploadedFileFactoryInterface::class); - - $stream = $stream_factory->createStreamFromFile($filename); + $stream = Registry::streamFactory()->createStreamFromFile($filename); $size = filesize($filename); $status = UPLOAD_ERR_OK; $client_name = basename($filename); - return $uploaded_file_factory->createUploadedFile($stream, $size, $status, $client_name, $mime_type); + return Registry::uploadedFileFactory() + ->createUploadedFile($stream, $size, $status, $client_name, $mime_type); } } diff --git a/tests/app/Http/Middleware/CheckCsrfTest.php b/tests/app/Http/Middleware/CheckCsrfTest.php index 3c71e6d8b2..a149e9dcae 100644 --- a/tests/app/Http/Middleware/CheckCsrfTest.php +++ b/tests/app/Http/Middleware/CheckCsrfTest.php @@ -21,8 +21,8 @@ namespace Fisharebest\Webtrees\Http\Middleware; use Fig\Http\Message\RequestMethodInterface; use Fig\Http\Message\StatusCodeInterface; +use Fisharebest\Webtrees\Registry; use Fisharebest\Webtrees\TestCase; -use Psr\Http\Message\UriFactoryInterface; use Psr\Http\Server\RequestHandlerInterface; use function app; @@ -43,8 +43,10 @@ class CheckCsrfTest extends TestCase $handler = self::createMock(RequestHandlerInterface::class); $handler->method('handle')->willReturn(response()); + $uri = Registry::UriFactory()->createUri('http://example.com'); + $request = self::createRequest(RequestMethodInterface::METHOD_POST) - ->withUri(app(UriFactoryInterface::class)->createUri('http://example.com')); + ->withUri($uri); $middleware = new CheckCsrf(); $response = $middleware->process($request, $handler); diff --git a/tests/app/WebtreesTest.php b/tests/app/WebtreesTest.php index 264ad76680..b15af2d790 100644 --- a/tests/app/WebtreesTest.php +++ b/tests/app/WebtreesTest.php @@ -30,7 +30,7 @@ use function set_error_handler; class WebtreesTest extends TestCase { /** - * @covers \Fisharebest\Webtrees\Webtrees::bootstrap + * @covers \Fisharebest\Webtrees\Webtrees::registerErrorHandler * @return void */ public function testInit(): void @@ -39,7 +39,7 @@ class WebtreesTest extends TestCase set_error_handler(null); $webtrees = new Webtrees(); - $webtrees->bootstrap(); + $webtrees->registerErrorHandler(); // webtrees sets the error reporting level. self::assertNotSame(0, error_reporting()); |
