summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorGreg Roach <fisharebest@gmail.com>2021-05-03 17:40:10 +0100
committerGreg Roach <fisharebest@gmail.com>2021-05-03 17:40:46 +0100
commit56afe05fa72eb037740c3a05c02828a7ba30f9a9 (patch)
tree86fa9a78fe37bc70a59b7893eea1e2b6555040d4 /tests
parentbd606c87b73e85df2cb4e759c1c3a6cf005799fb (diff)
downloadwebtrees-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.php65
-rw-r--r--tests/app/Http/Middleware/CheckCsrfTest.php6
-rw-r--r--tests/app/WebtreesTest.php4
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());