diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/TestCase.php | 15 | ||||
| -rw-r--r-- | tests/app/Http/Controllers/CalendarControllerTest.php | 17 | ||||
| -rw-r--r-- | tests/app/Http/RequestHandlers/LoginPageTest.php | 1 | ||||
| -rw-r--r-- | tests/app/Http/RequestHandlers/PasswordResetPageTest.php | 3 | ||||
| -rw-r--r-- | tests/app/Http/RequestHandlers/PrivacyPolicyTest.php | 41 | ||||
| -rw-r--r-- | tests/feature/IndividualListTest.php | 25 |
6 files changed, 27 insertions, 75 deletions
diff --git a/tests/TestCase.php b/tests/TestCase.php index ea37da36c4..0f51325669 100644 --- a/tests/TestCase.php +++ b/tests/TestCase.php @@ -151,6 +151,7 @@ class TestCase extends \PHPUnit\Framework\TestCase * @param string[] $query * @param string[] $params * @param UploadedFileInterface[] $files + * @param string[] $attributes * * @return ServerRequestInterface */ @@ -158,7 +159,8 @@ class TestCase extends \PHPUnit\Framework\TestCase string $method = RequestMethodInterface::METHOD_GET, array $query = [], array $params = [], - array $files = [] + array $files = [], + array $attributes = [] ): ServerRequestInterface { /** @var ServerRequestFactoryInterface */ $server_request_factory = app(ServerRequestFactoryInterface::class); @@ -173,7 +175,16 @@ class TestCase extends \PHPUnit\Framework\TestCase ->withUploadedFiles($files) ->withAttribute('base_url', 'https://webtrees.test') ->withAttribute('client-ip', '127.0.0.1') - ->withAttribute('locale', new LocaleEnUs()); + ->withAttribute('locale', new LocaleEnUs()) + ->withAttribute('user', new GuestUser()); + + foreach ($attributes as $key => $value) { + $request = $request->withAttribute($key, $value); + + if ($key === 'tree') { + app()->instance(Tree::class, $value); + } + } app()->instance(ServerRequestInterface::class, $request); diff --git a/tests/app/Http/Controllers/CalendarControllerTest.php b/tests/app/Http/Controllers/CalendarControllerTest.php index c459029223..7f645ad8f3 100644 --- a/tests/app/Http/Controllers/CalendarControllerTest.php +++ b/tests/app/Http/Controllers/CalendarControllerTest.php @@ -19,8 +19,8 @@ declare(strict_types=1); namespace Fisharebest\Webtrees\Http\Controllers; +use Fig\Http\Message\RequestMethodInterface; use Fig\Http\Message\StatusCodeInterface; -use Fisharebest\Localization\Locale\LocaleEnUs; use Fisharebest\Webtrees\Services\CalendarService; use Fisharebest\Webtrees\Services\LocalizationService; use Fisharebest\Webtrees\TestCase; @@ -45,27 +45,20 @@ class CalendarControllerTest extends TestCase public function testCalendar(): void { $tree = $this->importTree('demo.ged'); - app()->instance(Tree::class, $tree); $calendar_service = new CalendarService(); - $localization_service = new LocalizationService(new LocaleEnUs()); + $localization_service = new LocalizationService(); $controller = new CalendarController($calendar_service, $localization_service); - $request = self::createRequest() - ->withAttribute('tree', $tree) - ->withAttribute('view', 'day'); + $request = self::createRequest(RequestMethodInterface::METHOD_GET, [], [], [], ['tree' => $tree, 'view' => 'day']); $response = $controller->calendar($request); $this->assertSame(StatusCodeInterface::STATUS_OK, $response->getStatusCode()); - $request = self::createRequest() - ->withAttribute('tree', $tree) - ->withAttribute('view', 'month'); + $request = self::createRequest(RequestMethodInterface::METHOD_GET, [], [], [], ['tree' => $tree, 'view' => 'month']); $response = $controller->page($request); $this->assertSame(StatusCodeInterface::STATUS_OK, $response->getStatusCode()); - $request = self::createRequest() - ->withAttribute('tree', $tree) - ->withAttribute('view', 'year'); + $request = self::createRequest(RequestMethodInterface::METHOD_GET, [], [], [], ['tree' => $tree, 'view' => 'year']); $response = $controller->page($request); $this->assertSame(StatusCodeInterface::STATUS_OK, $response->getStatusCode()); } diff --git a/tests/app/Http/RequestHandlers/LoginPageTest.php b/tests/app/Http/RequestHandlers/LoginPageTest.php index 45cad5e138..670b03f187 100644 --- a/tests/app/Http/RequestHandlers/LoginPageTest.php +++ b/tests/app/Http/RequestHandlers/LoginPageTest.php @@ -23,7 +23,6 @@ use Fig\Http\Message\StatusCodeInterface; use Fisharebest\Webtrees\Services\TreeService; use Fisharebest\Webtrees\TestCase; use Fisharebest\Webtrees\User; -use Fisharebest\Webtrees\View; /** * @covers \Fisharebest\Webtrees\Http\RequestHandlers\LoginPage diff --git a/tests/app/Http/RequestHandlers/PasswordResetPageTest.php b/tests/app/Http/RequestHandlers/PasswordResetPageTest.php index 6c853730d9..972684b48f 100644 --- a/tests/app/Http/RequestHandlers/PasswordResetPageTest.php +++ b/tests/app/Http/RequestHandlers/PasswordResetPageTest.php @@ -19,6 +19,7 @@ declare(strict_types=1); namespace Fisharebest\Webtrees\Http\ResetHandlers; +use Fig\Http\Message\RequestMethodInterface; use Fig\Http\Message\StatusCodeInterface; use Fisharebest\Webtrees\Http\RequestHandlers\PasswordResetPage; use Fisharebest\Webtrees\Services\UserService; @@ -41,7 +42,7 @@ class PasswordResetPageTest extends TestCase $user_service = $this->createMock(UserService::class); $user_service->expects($this->once())->method('findByToken')->willReturn($user); - $request = self::createRequest()->withAttribute('tree', null); + $request = self::createRequest(); $handler = new PasswordResetPage($user_service); $response = $handler->handle($request); diff --git a/tests/app/Http/RequestHandlers/PrivacyPolicyTest.php b/tests/app/Http/RequestHandlers/PrivacyPolicyTest.php deleted file mode 100644 index 2b154d762a..0000000000 --- a/tests/app/Http/RequestHandlers/PrivacyPolicyTest.php +++ /dev/null @@ -1,41 +0,0 @@ -<?php - -/** - * webtrees: online genealogy - * Copyright (C) 2019 webtrees development team - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * You should have received a copy of the GNU General Public License - * along with this program. If not, see <http://www.gnu.org/licenses/>. - */ - -declare(strict_types=1); - -namespace Fisharebest\Webtrees\Http\RequestHandlers; - -use Fig\Http\Message\StatusCodeInterface; -use Fisharebest\Webtrees\TestCase; - -/** - * @covers \Fisharebest\Webtrees\Http\RequestHandlers\PrivacyPolicy - */ -class PrivacyPolicyTest extends TestCase -{ - /** - * @return void - */ - public function testHandler(): void - { - $request = self::createRequest(); - $handler = new PrivacyPolicy(); - $response = $handler->handle($request); - - self::assertSame(StatusCodeInterface::STATUS_OK, $response->getStatusCode()); - } -} diff --git a/tests/feature/IndividualListTest.php b/tests/feature/IndividualListTest.php index c001d3cf63..ec3200595a 100644 --- a/tests/feature/IndividualListTest.php +++ b/tests/feature/IndividualListTest.php @@ -21,11 +21,11 @@ namespace Fisharebest\Webtrees; use Fig\Http\Message\RequestMethodInterface; use Fig\Http\Message\StatusCodeInterface; -use Fisharebest\Localization\Locale\LocaleEnUs; use Fisharebest\Webtrees\Http\Controllers\ListController; use Fisharebest\Webtrees\Module\IndividualListModule; use Fisharebest\Webtrees\Services\IndividualListService; use Fisharebest\Webtrees\Services\LocalizationService; +use Psr\Http\Message\ServerRequestInterface; /** * Test the individual lists. @@ -43,39 +43,28 @@ class IndividualListTest extends TestCase public function testIndividualList(): void { $tree = $this->importTree('demo.ged'); - $user = Auth::user(); $list_module = new IndividualListModule(); - $localization_service = new LocalizationService(new LocaleEnUs()); + $localization_service = new LocalizationService(); $individual_list_service = new IndividualListService($localization_service, $tree); $controller = new ListController($individual_list_service, $localization_service); - $request = self::createRequest() - ->withAttribute('tree', $tree) - ->withAttribute('user', $user); + $request = self::createRequest(RequestMethodInterface::METHOD_GET, [], [], [], ['tree' => $tree]); $response = $controller->individualList($request, $list_module); $this->assertSame(StatusCodeInterface::STATUS_OK, $response->getStatusCode()); - $request = self::createRequest(RequestMethodInterface::METHOD_GET, ['alpha' => 'B']) - ->withAttribute('tree', $tree) - ->withAttribute('user', $user); + $request = self::createRequest(RequestMethodInterface::METHOD_GET, ['alpha' => 'B'], [], [], ['tree' => $tree]); $response = $controller->individualList($request, $list_module); $this->assertSame(StatusCodeInterface::STATUS_OK, $response->getStatusCode()); - $request = self::createRequest(RequestMethodInterface::METHOD_GET, ['alpha' => ',']) - ->withAttribute('tree', $tree) - ->withAttribute('user', $user); + $request = self::createRequest(RequestMethodInterface::METHOD_GET, ['alpha' => ','], [], [], ['tree' => $tree]); $response = $controller->individualList($request, $list_module); $this->assertSame(StatusCodeInterface::STATUS_OK, $response->getStatusCode()); - $request = self::createRequest(RequestMethodInterface::METHOD_GET, ['alpha' => '@']) - ->withAttribute('tree', $tree) - ->withAttribute('user', $tree); + $request = self::createRequest(RequestMethodInterface::METHOD_GET, ['alpha' => '@'], [], [], ['tree' => $tree]); $response = $controller->individualList($request, $list_module); $this->assertSame(StatusCodeInterface::STATUS_OK, $response->getStatusCode()); - $request = self::createRequest(RequestMethodInterface::METHOD_GET, ['surname' => 'BRAUN']) - ->withAttribute('tree', $tree) - ->withAttribute('user', $user); + $request = self::createRequest(RequestMethodInterface::METHOD_GET, ['surname' => 'BRAUN'], [], [], ['tree' => $tree]); $response = $controller->individualList($request, $list_module); $this->assertSame(StatusCodeInterface::STATUS_OK, $response->getStatusCode()); } |
