diff options
Diffstat (limited to 'tests/app/Http')
22 files changed, 371 insertions, 160 deletions
diff --git a/tests/app/Http/Controllers/Admin/ChangesLogControllerTest.php b/tests/app/Http/Controllers/Admin/ChangesLogControllerTest.php index 727f4ef356..43a845e849 100644 --- a/tests/app/Http/Controllers/Admin/ChangesLogControllerTest.php +++ b/tests/app/Http/Controllers/Admin/ChangesLogControllerTest.php @@ -41,7 +41,7 @@ class ChangesLogControllerTest extends TestCase { app()->instance(Tree::class, Tree::create('', '')); - $request = self::createRequest('GET', ['route' => 'admin-changes-log']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'admin-changes-log']); $response = app(ChangesLogController::class)->changesLog($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -57,7 +57,7 @@ class ChangesLogControllerTest extends TestCase Auth::login($user); $individual = $tree->createIndividual("0 @@ INDI\n1 NAME Joe Bloggs"); - $request = self::createRequest('GET', [ + $request = self::createRequest(self::METHOD_GET, [ 'route' => 'admin-changes-log-data', 'search' => 'Joe', 'from' => '2000-01-01', @@ -82,7 +82,7 @@ class ChangesLogControllerTest extends TestCase Auth::login($user); $tree->createIndividual("0 @@ INDI\n1 NAME Joe Bloggs"); - $request = self::createRequest('GET', [ + $request = self::createRequest(self::METHOD_GET, [ 'route' => 'admin-changes-log-download', 'ged' => $tree->name(), ]); diff --git a/tests/app/Http/Controllers/Admin/ControlPanelControllerTest.php b/tests/app/Http/Controllers/Admin/ControlPanelControllerTest.php index bb351d8c84..5e41336d13 100644 --- a/tests/app/Http/Controllers/Admin/ControlPanelControllerTest.php +++ b/tests/app/Http/Controllers/Admin/ControlPanelControllerTest.php @@ -39,7 +39,7 @@ class ControlPanelControllerTest extends TestCase { app()->instance(Tree::class, Tree::create('', '')); - $request = self::createRequest('GET', ['route' => 'control-panel']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'control-panel']); $response = app(ControlPanelController::class)->controlPanel($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -50,7 +50,7 @@ class ControlPanelControllerTest extends TestCase */ public function testControlPanelManager(): void { - $request = self::createRequest('GET', ['route' => 'control-panel']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'control-panel']); $response = app(ControlPanelController::class)->controlPanelManager($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); diff --git a/tests/app/Http/Controllers/Admin/FixLevel0MediaControllerTest.php b/tests/app/Http/Controllers/Admin/FixLevel0MediaControllerTest.php index 144c819993..9b57c38f31 100644 --- a/tests/app/Http/Controllers/Admin/FixLevel0MediaControllerTest.php +++ b/tests/app/Http/Controllers/Admin/FixLevel0MediaControllerTest.php @@ -37,7 +37,7 @@ class FixLevel0MediaControllerTest extends TestCase public function testFixLevel0Media(): void { $controller = new FixLevel0MediaController(new DatatablesService()); - $request = self::createRequest('GET', ['route' => 'admin-fix-level-0-media']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'admin-fix-level-0-media']); $response = $controller->fixLevel0Media($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -50,7 +50,7 @@ class FixLevel0MediaControllerTest extends TestCase { $tree = Tree::create('name', 'title'); $controller = new FixLevel0MediaController(new DatatablesService()); - $request = self::createRequest('POST', ['route' => 'admin-fix-level-0-media'], [ + $request = self::createRequest(self::METHOD_POST, ['route' => 'admin-fix-level-0-media'], [ 'tree_id' => $tree->id(), 'fact_id' => '', 'indi_xref' => '', @@ -69,7 +69,7 @@ class FixLevel0MediaControllerTest extends TestCase $datatables_service = new DatatablesService(); $tree = Tree::create('name', 'title'); $controller = new FixLevel0MediaController($datatables_service); - $request = self::createRequest('GET', ['route' => 'admin-fix-level-0-media-data', ['tree_id' => $tree->id()]]); + $request = self::createRequest(self::METHOD_GET, ['route' => 'admin-fix-level-0-media-data', ['tree_id' => $tree->id()]]); $response = $controller->fixLevel0MediaData($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); diff --git a/tests/app/Http/Controllers/Admin/ImportThumbnailsControllerTest.php b/tests/app/Http/Controllers/Admin/ImportThumbnailsControllerTest.php index 079537e58c..65dd4486b7 100644 --- a/tests/app/Http/Controllers/Admin/ImportThumbnailsControllerTest.php +++ b/tests/app/Http/Controllers/Admin/ImportThumbnailsControllerTest.php @@ -35,7 +35,7 @@ class ImportThumbnailsControllerTest extends TestCase public function testWebtrees1Thumbnails(): void { $controller = new ImportThumbnailsController(); - $request = self::createRequest('GET', ['route' => 'admin-webtrees1-thumbs']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'admin-webtrees1-thumbs']); $response = $controller->webtrees1Thumbnails($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -47,7 +47,7 @@ class ImportThumbnailsControllerTest extends TestCase public function testWebtrees1ThumbnailsAction(): void { $controller = new ImportThumbnailsController(); - $request = self::createRequest('POST', ['route' => 'admin-webtrees1-thumbs-action'], [ + $request = self::createRequest(self::METHOD_POST, ['route' => 'admin-webtrees1-thumbs-action'], [ 'thumbnail' => 'foo', 'action' => '', 'xref' => [], @@ -64,7 +64,7 @@ class ImportThumbnailsControllerTest extends TestCase public function testWebtrees1ThumbnailsData(): void { $controller = new ImportThumbnailsController(); - $request = self::createRequest('GET', [ + $request = self::createRequest(self::METHOD_GET, [ 'route' => 'admin-webtrees1-thumbs-data', 'start' => '0', 'length' => '10', diff --git a/tests/app/Http/Controllers/Admin/LocationControllerTest.php b/tests/app/Http/Controllers/Admin/LocationControllerTest.php index 74682bd424..8078a14dde 100644 --- a/tests/app/Http/Controllers/Admin/LocationControllerTest.php +++ b/tests/app/Http/Controllers/Admin/LocationControllerTest.php @@ -39,7 +39,7 @@ class LocationControllerTest extends TestCase public function testMapData(): void { $controller = new LocationController(new GedcomService()); - $request = self::createRequest('GET', ['route' => 'map-data']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'map-data']); $response = $controller->mapData($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -51,7 +51,7 @@ class LocationControllerTest extends TestCase public function testMapDataEdit(): void { $controller = new LocationController(new GedcomService()); - $request = self::createRequest('GET', ['route' => 'map-data-edit', 'place_id' => '0', 'parent_id' => '0']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'map-data-edit', 'place_id' => '0', 'parent_id' => '0']); $response = $controller->mapDataEdit($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -63,7 +63,7 @@ class LocationControllerTest extends TestCase public function testMapDataSave(): void { $controller = new LocationController(new GedcomService()); - $request = self::createRequest('POST', [ + $request = self::createRequest(self::METHOD_POST, [ 'route' => 'map-data-edit', 'parent_id' => '0', 'place_id' => '0', @@ -87,7 +87,7 @@ class LocationControllerTest extends TestCase public function testMapDataDelete(): void { $controller = new LocationController(new GedcomService()); - $request = self::createRequest('POST', ['route' => 'map-data-delete', 'parent_id' => '0', 'place_id' => '0']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'map-data-delete', 'parent_id' => '0', 'place_id' => '0']); $response = $controller->mapDataDelete($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); @@ -99,7 +99,7 @@ class LocationControllerTest extends TestCase public function testExportLocations(): void { $controller = new LocationController(new GedcomService()); - $request = self::createRequest('GET', ['route' => 'locations-export', 'parent_id' => '0', 'format' => 'geojson']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'locations-export', 'parent_id' => '0', 'format' => 'geojson']); $response = $controller->exportLocations($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -112,7 +112,7 @@ class LocationControllerTest extends TestCase public function testImportLocations(): void { $controller = new LocationController(new GedcomService()); - $request = self::createRequest('GET', ['route' => 'locations-import','parent_id' => '0']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'locations-import','parent_id' => '0']); $response = $controller->importLocations($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -125,7 +125,7 @@ class LocationControllerTest extends TestCase { $csv = $this->createUploadedFile(dirname(__DIR__, 4) . '/data/places.csv', 'text/csv'); $controller = new LocationController(new GedcomService()); - $request = self::createRequest('POST', ['route' => 'locations-import','parent_id' => '0'], [], ['csv' => $csv]); + $request = self::createRequest(self::METHOD_POST, ['route' => 'locations-import','parent_id' => '0'], [], ['csv' => $csv]); $response = $controller->importLocationsAction($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); @@ -138,7 +138,7 @@ class LocationControllerTest extends TestCase { $tree = Tree::create('name', 'title'); $controller = new LocationController(new GedcomService()); - $request = self::createRequest('POST', ['route' => 'locations-import-from-tree']) + $request = self::createRequest(self::METHOD_POST, ['route' => 'locations-import-from-tree']) ->withAttribute('tree', $tree); $response = $controller->importLocationsFromTree($request); diff --git a/tests/app/Http/Controllers/Admin/MapProviderControllerTest.php b/tests/app/Http/Controllers/Admin/MapProviderControllerTest.php index 37af05b096..812369ff21 100644 --- a/tests/app/Http/Controllers/Admin/MapProviderControllerTest.php +++ b/tests/app/Http/Controllers/Admin/MapProviderControllerTest.php @@ -35,7 +35,7 @@ class MapProviderControllerTest extends TestCase public function testMapProviderEdit(): void { $controller = new MapProviderController(); - $request = self::createRequest('GET', ['route' => 'map-provider']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'map-provider']); $response = $controller->mapProviderEdit($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -47,7 +47,7 @@ class MapProviderControllerTest extends TestCase public function testMapProviderSave(): void { $controller = new MapProviderController(); - $request = self::createRequest('POST', ['route' => 'map-provider'], ['provider' => '', 'geonames' => '']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'map-provider'], ['provider' => '', 'geonames' => '']); $response = $controller->mapProviderSave($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); diff --git a/tests/app/Http/Controllers/Admin/MediaControllerTest.php b/tests/app/Http/Controllers/Admin/MediaControllerTest.php index b986e3c07a..fce2dc3715 100644 --- a/tests/app/Http/Controllers/Admin/MediaControllerTest.php +++ b/tests/app/Http/Controllers/Admin/MediaControllerTest.php @@ -40,7 +40,7 @@ class MediaControllerTest extends TestCase $datatables_service = new DatatablesService(); $filesystem = new Filesystem(new MemoryAdapter()); $controller = new MediaController($datatables_service, $filesystem); - $request = self::createRequest('GET', ['route' => 'admin-media']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'admin-media']); $response = $controller->index($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -54,7 +54,7 @@ class MediaControllerTest extends TestCase $datatables_service = new DatatablesService(); $filesystem = new Filesystem(new MemoryAdapter()); $controller = new MediaController($datatables_service, $filesystem); - $request = self::createRequest('GET', [ + $request = self::createRequest(self::METHOD_GET, [ 'route' => 'admin-media-data', 'files' => 'local', 'media_folder' => '', @@ -76,7 +76,7 @@ class MediaControllerTest extends TestCase $datatables_service = new DatatablesService(); $filesystem = new Filesystem(new MemoryAdapter()); $controller = new MediaController($datatables_service, $filesystem); - $request = self::createRequest('GET', [ + $request = self::createRequest(self::METHOD_GET, [ 'route' => 'admin-media-external', 'files' => 'local', 'media_folder' => '', @@ -98,7 +98,7 @@ class MediaControllerTest extends TestCase $datatables_service = new DatatablesService(); $filesystem = new Filesystem(new MemoryAdapter()); $controller = new MediaController($datatables_service, $filesystem); - $request = self::createRequest('GET', [ + $request = self::createRequest(self::METHOD_GET, [ 'route' => 'admin-media-unused', 'files' => 'local', 'media_folder' => '', @@ -120,7 +120,7 @@ class MediaControllerTest extends TestCase $datatables_service = new DatatablesService(); $filesystem = new Filesystem(new MemoryAdapter()); $controller = new MediaController($datatables_service, $filesystem); - $request = self::createRequest('POST', ['route' => 'admin-media-delete', 'file' => 'foo', 'folder' => 'bar']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'admin-media-delete', 'file' => 'foo', 'folder' => 'bar']); $response = $controller->delete($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -134,7 +134,7 @@ class MediaControllerTest extends TestCase $datatables_service = new DatatablesService(); $filesystem = new Filesystem(new MemoryAdapter()); $controller = new MediaController($datatables_service, $filesystem); - $request = self::createRequest('GET', ['route' => 'admin-media-upload']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'admin-media-upload']); $response = $controller->upload($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -148,7 +148,7 @@ class MediaControllerTest extends TestCase $datatables_service = new DatatablesService(); $filesystem = new Filesystem(new MemoryAdapter()); $controller = new MediaController($datatables_service, $filesystem); - $request = self::createRequest('POST', ['route' => 'admin-media-delete']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'admin-media-delete']); $response = $controller->uploadAction($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); diff --git a/tests/app/Http/Controllers/Admin/ModuleControllerTest.php b/tests/app/Http/Controllers/Admin/ModuleControllerTest.php index 66fedd04a8..07c339cb34 100644 --- a/tests/app/Http/Controllers/Admin/ModuleControllerTest.php +++ b/tests/app/Http/Controllers/Admin/ModuleControllerTest.php @@ -37,7 +37,7 @@ class ModuleControllerTest extends TestCase public function testList(): void { $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('GET', ['route' => 'modules']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'modules']); $response = $controller->list($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -49,7 +49,7 @@ class ModuleControllerTest extends TestCase public function testListAnalytics(): void { $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('GET', ['route' => 'analytics']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'analytics']); $response = $controller->listAnalytics($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -61,7 +61,7 @@ class ModuleControllerTest extends TestCase public function testListBlocks(): void { $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('GET', ['route' => 'blocks']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'blocks']); $response = $controller->listBlocks($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -73,7 +73,7 @@ class ModuleControllerTest extends TestCase public function testListCharts(): void { $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('GET', ['route' => 'charts']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'charts']); $response = $controller->listCharts($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -85,7 +85,7 @@ class ModuleControllerTest extends TestCase public function testListFooters(): void { $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('GET', ['route' => 'footers']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'footers']); $response = $controller->listFooters($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -97,7 +97,7 @@ class ModuleControllerTest extends TestCase public function testListHistory(): void { $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('GET', ['route' => 'history']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'history']); $response = $controller->listHistory($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -109,7 +109,7 @@ class ModuleControllerTest extends TestCase public function testListLanguages(): void { $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('GET', ['route' => 'languages']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'languages']); $response = $controller->listLanguages($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -121,7 +121,7 @@ class ModuleControllerTest extends TestCase public function testListMenus(): void { $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('GET', ['route' => 'menus']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'menus']); $response = $controller->listMenus($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -133,7 +133,7 @@ class ModuleControllerTest extends TestCase public function testListReports(): void { $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('GET', ['route' => 'reports']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'reports']); $response = $controller->listReports($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -145,7 +145,7 @@ class ModuleControllerTest extends TestCase public function testListSidebars(): void { $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('GET', ['route' => 'sidebars']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'sidebars']); $response = $controller->listSidebars($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -157,7 +157,7 @@ class ModuleControllerTest extends TestCase public function testListTabs(): void { $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('GET', ['route' => 'tabs']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'tabs']); $response = $controller->listTabs($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -169,7 +169,7 @@ class ModuleControllerTest extends TestCase public function testListThemes(): void { $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('GET', ['route' => 'themes']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'themes']); $response = $controller->listThemes($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -182,7 +182,7 @@ class ModuleControllerTest extends TestCase { Tree::create('name', 'title'); $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('POST', ['route' => 'modules']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'modules']); $response = $controller->update($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); @@ -195,7 +195,7 @@ class ModuleControllerTest extends TestCase { Tree::create('name', 'title'); $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('POST', ['route' => 'analytics']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'analytics']); $response = $controller->updateAnalytics($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); @@ -208,7 +208,7 @@ class ModuleControllerTest extends TestCase { Tree::create('name', 'title'); $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('POST', ['route' => 'blocks']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'blocks']); $response = $controller->updateBlocks($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); @@ -221,7 +221,7 @@ class ModuleControllerTest extends TestCase { Tree::create('name', 'title'); $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('POST', ['route' => 'charts']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'charts']); $response = $controller->updateCharts($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); @@ -234,7 +234,7 @@ class ModuleControllerTest extends TestCase { Tree::create('name', 'title'); $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('POST', ['route' => 'footers']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'footers']); $response = $controller->updateFooters($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); @@ -247,7 +247,7 @@ class ModuleControllerTest extends TestCase { Tree::create('name', 'title'); $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('POST', ['route' => 'history']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'history']); $response = $controller->updateHistory($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); @@ -260,7 +260,7 @@ class ModuleControllerTest extends TestCase { Tree::create('name', 'title'); $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('POST', ['route' => 'languages']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'languages']); $response = $controller->updateLanguages($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); @@ -273,7 +273,7 @@ class ModuleControllerTest extends TestCase { Tree::create('name', 'title'); $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('POST', ['route' => 'menus']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'menus']); $response = $controller->updateMenus($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); @@ -286,7 +286,7 @@ class ModuleControllerTest extends TestCase { Tree::create('name', 'title'); $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('POST', ['route' => 'reports']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'reports']); $response = $controller->updateReports($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); @@ -299,7 +299,7 @@ class ModuleControllerTest extends TestCase { Tree::create('name', 'title'); $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('POST', ['route' => 'sidebars']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'sidebars']); $response = $controller->updateSidebars($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); @@ -312,7 +312,7 @@ class ModuleControllerTest extends TestCase { Tree::create('name', 'title'); $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('POST', ['route' => 'tabs']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'tabs']); $response = $controller->updateTabs($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); @@ -325,7 +325,7 @@ class ModuleControllerTest extends TestCase { Tree::create('name', 'title'); $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('POST', ['route' => 'themes']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'themes']); $response = $controller->updateThemes($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); @@ -337,7 +337,7 @@ class ModuleControllerTest extends TestCase public function testDeleteModuleSettings(): void { $controller = new ModuleController(new ModuleService()); - $request = self::createRequest('POST', ['route' => 'delete-module-settings'], ['module_name' => 'foo']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'delete-module-settings'], ['module_name' => 'foo']); $response = $controller->deleteModuleSettings($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); diff --git a/tests/app/Http/Controllers/Admin/UpgradeControllerTest.php b/tests/app/Http/Controllers/Admin/UpgradeControllerTest.php index 25e1c291ea..357c79ff05 100644 --- a/tests/app/Http/Controllers/Admin/UpgradeControllerTest.php +++ b/tests/app/Http/Controllers/Admin/UpgradeControllerTest.php @@ -48,7 +48,7 @@ class UpgradeControllerTest extends TestCase new UpgradeService(new TimeoutService()) ); - $request = self::createRequest('GET', ['route' => 'wizard']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'wizard']); $response = $controller->wizard($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -66,7 +66,7 @@ class UpgradeControllerTest extends TestCase new UpgradeService(new TimeoutService()) ); - $request = self::createRequest('GET', ['route' => 'wizard', 'continue' => '1']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'wizard', 'continue' => '1']); $response = $controller->wizard($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -83,7 +83,7 @@ class UpgradeControllerTest extends TestCase new UpgradeService(new TimeoutService()) ); - $request = self::createRequest('POST', ['route' => 'wizard', 'step' => 'Invalid']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'wizard', 'step' => 'Invalid']); $controller->step($request); } @@ -99,7 +99,7 @@ class UpgradeControllerTest extends TestCase $mock_upgrade_service ); - $request = self::createRequest('POST', ['route' => 'wizard', 'step' => 'Check']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'wizard', 'step' => 'Check']); $response = $controller->step($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -118,7 +118,7 @@ class UpgradeControllerTest extends TestCase $mock_upgrade_service ); - $request = self::createRequest('POST', ['route' => 'wizard', 'step' => 'Check']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'wizard', 'step' => 'Check']); $controller->step($request); } @@ -135,7 +135,7 @@ class UpgradeControllerTest extends TestCase $mock_upgrade_service ); - $request = self::createRequest('POST', ['route' => 'wizard', 'step' => 'Check']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'wizard', 'step' => 'Check']); $controller->step($request); } @@ -149,7 +149,7 @@ class UpgradeControllerTest extends TestCase new UpgradeService(new TimeoutService()) ); - $request = self::createRequest('POST', ['route' => 'wizard', 'step' => 'Prepare']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'wizard', 'step' => 'Prepare']); $response = $controller->step($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -165,7 +165,7 @@ class UpgradeControllerTest extends TestCase new UpgradeService(new TimeoutService()) ); - $request = self::createRequest('POST', ['route' => 'wizard', 'step' => 'Pending']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'wizard', 'step' => 'Pending']); $response = $controller->step($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -187,7 +187,7 @@ class UpgradeControllerTest extends TestCase new UpgradeService(new TimeoutService()) ); - $request = self::createRequest('POST', ['route' => 'wizard', 'step' => 'Pending']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'wizard', 'step' => 'Pending']); $controller->step($request); } @@ -202,7 +202,7 @@ class UpgradeControllerTest extends TestCase new UpgradeService(new TimeoutService()) ); - $request = self::createRequest('POST', ['route' => 'wizard', 'step' => 'Export']) + $request = self::createRequest(self::METHOD_POST, ['route' => 'wizard', 'step' => 'Export']) ->withAttribute('tree', $tree); $response = $controller->step($request); @@ -227,7 +227,7 @@ class UpgradeControllerTest extends TestCase $mock_upgrade_service ); - $request = self::createRequest('POST', ['route' => 'wizard', 'step' => 'Download']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'wizard', 'step' => 'Download']); $controller->step($request); } @@ -243,7 +243,7 @@ class UpgradeControllerTest extends TestCase $mock_upgrade_service ); - $request = self::createRequest('POST', ['route' => 'wizard', 'step' => 'Download']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'wizard', 'step' => 'Download']); $response = $controller->step($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -261,7 +261,7 @@ class UpgradeControllerTest extends TestCase $mock_upgrade_service ); - $request = self::createRequest('POST', ['route' => 'wizard', 'step' => 'Unzip']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'wizard', 'step' => 'Unzip']); $response = $controller->step($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -277,7 +277,7 @@ class UpgradeControllerTest extends TestCase new UpgradeService(new TimeoutService()) ); - $request = self::createRequest('POST', ['route' => 'wizard', 'step' => 'Copy']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'wizard', 'step' => 'Copy']); $response = $controller->step($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -294,7 +294,7 @@ class UpgradeControllerTest extends TestCase $mock_upgrade_service ); - $request = self::createRequest('POST', ['route' => 'wizard', 'step' => 'Cleanup']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'wizard', 'step' => 'Cleanup']); $response = $controller->step($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); diff --git a/tests/app/Http/Controllers/Admin/UsersControllerTest.php b/tests/app/Http/Controllers/Admin/UsersControllerTest.php index 5252775ab5..42e2860062 100644 --- a/tests/app/Http/Controllers/Admin/UsersControllerTest.php +++ b/tests/app/Http/Controllers/Admin/UsersControllerTest.php @@ -43,7 +43,7 @@ class UsersControllerTest extends TestCase public function testIndex(): void { $controller = app(UsersController::class); - $request = self::createRequest('GET', ['route' => 'admin-users']) + $request = self::createRequest(self::METHOD_GET, ['route' => 'admin-users']) ->withAttribute('user', Auth::user()); $response = $controller->index($request); @@ -56,7 +56,7 @@ class UsersControllerTest extends TestCase public function testData(): void { $controller = app(UsersController::class); - $request = self::createRequest('GET', ['route' => 'admin-users-data']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'admin-users-data']); $response = $controller->data($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -68,7 +68,7 @@ class UsersControllerTest extends TestCase public function testCreate(): void { $controller = app(UsersController::class); - $request = self::createRequest('GET', ['route' => 'admin-users-create']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'admin-users-create']); $response = $controller->create($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -80,7 +80,7 @@ class UsersControllerTest extends TestCase public function testSave(): void { $controller = app(UsersController::class); - $request = self::createRequest('POST', ['route' => 'admin-users-create'], [ + $request = self::createRequest(self::METHOD_POST, ['route' => 'admin-users-create'], [ 'username' => 'User name', 'email' => 'email@example.com', 'real_name' => 'Real Name', @@ -98,7 +98,7 @@ class UsersControllerTest extends TestCase { $user = (new UserService())->create('user', 'real', 'email', 'pass'); $controller = app(UsersController::class); - $request = self::createRequest('GET', ['route' => 'admin-users-edit', 'user_id' => (string) $user->id()]); + $request = self::createRequest(self::METHOD_GET, ['route' => 'admin-users-edit', 'user_id' => (string) $user->id()]); $response = $controller->edit($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -112,7 +112,7 @@ class UsersControllerTest extends TestCase /** @var User $user */ $user = app(UserService::class)->create('user', 'real', 'email', 'pass'); $controller = app(UsersController::class); - $request = self::createRequest('POST', ['route' => 'admin-users-edit'], [ + $request = self::createRequest(self::METHOD_POST, ['route' => 'admin-users-edit'], [ 'user_id' => $user->id(), 'username' => '', 'real_name' => '', @@ -141,7 +141,7 @@ class UsersControllerTest extends TestCase public function testCleanup(): void { $controller = app(UsersController::class); - $request = self::createRequest('GET', ['route' => 'admin-users-cleanup']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'admin-users-cleanup']); $response = $controller->cleanup($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -157,7 +157,7 @@ class UsersControllerTest extends TestCase $module_service = new ModuleService(); $user_service = new UserService(); $controller = new UsersController($datatables_service, $mail_service, $module_service, $user_service); - $request = self::createRequest('POST', ['route' => 'admin-users-cleanup']); + $request = self::createRequest(self::METHOD_POST, ['route' => 'admin-users-cleanup']); $response = $controller->cleanupAction($request); $this->assertSame(self::STATUS_FOUND, $response->getStatusCode()); diff --git a/tests/app/Http/Controllers/CalendarControllerTest.php b/tests/app/Http/Controllers/CalendarControllerTest.php index ef39ef2065..e8fd23b6ea 100644 --- a/tests/app/Http/Controllers/CalendarControllerTest.php +++ b/tests/app/Http/Controllers/CalendarControllerTest.php @@ -48,32 +48,32 @@ class CalendarControllerTest extends \Fisharebest\Webtrees\TestCase $localization_service = new LocalizationService(new LocaleEnUs()); $controller = new CalendarController($calendar_service, $localization_service); - $request = self::createRequest('GET', ['route' => 'calendar', 'view' => 'day']) + $request = self::createRequest(self::METHOD_GET, ['route' => 'calendar', 'view' => 'day']) ->withAttribute('tree', $tree); $response = $controller->page($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); - $request = self::createRequest('GET', ['route' => 'calendar-events', 'view' => 'day']) + $request = self::createRequest(self::METHOD_GET, ['route' => 'calendar-events', 'view' => 'day']) ->withAttribute('tree', $tree); $response = $controller->calendar($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); - $request = self::createRequest('GET', ['route' => 'calendar', 'view' => 'month']) + $request = self::createRequest(self::METHOD_GET, ['route' => 'calendar', 'view' => 'month']) ->withAttribute('tree', $tree); $response = $controller->page($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); - $request = self::createRequest('GET', ['route' => 'calendar-events', 'view' => 'month']) + $request = self::createRequest(self::METHOD_GET, ['route' => 'calendar-events', 'view' => 'month']) ->withAttribute('tree', $tree); $response = $controller->calendar($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); - $request = self::createRequest('GET', ['route' => 'calendar', 'view' => 'year']) + $request = self::createRequest(self::METHOD_GET, ['route' => 'calendar', 'view' => 'year']) ->withAttribute('tree', $tree); $response = $controller->page($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); - $request = self::createRequest('GET', ['route' => 'calendar-events', 'view' => 'year']) + $request = self::createRequest(self::METHOD_GET, ['route' => 'calendar-events', 'view' => 'year']) ->withAttribute('tree', $tree); $response = $controller->calendar($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); diff --git a/tests/app/Http/Middleware/CheckCsrfTest.php b/tests/app/Http/Middleware/CheckCsrfTest.php index 2bbcbb83b3..715b8f1e49 100644 --- a/tests/app/Http/Middleware/CheckCsrfTest.php +++ b/tests/app/Http/Middleware/CheckCsrfTest.php @@ -38,7 +38,7 @@ class CheckCsrfTest extends TestCase $handler = $this->createMock(RequestHandlerInterface::class); $handler->method('handle')->willReturn(response()); - $request = self::createRequest('POST') + $request = self::createRequest(self::METHOD_POST) ->withAttribute('request_uri', 'http://example.com'); $middleware = new CheckCsrf(); diff --git a/tests/app/Http/RequestHandlers/DeleteUserTest.php b/tests/app/Http/RequestHandlers/DeleteUserTest.php index 4e55d2b3b4..1aded01e6e 100644 --- a/tests/app/Http/RequestHandlers/DeleteUserTest.php +++ b/tests/app/Http/RequestHandlers/DeleteUserTest.php @@ -20,6 +20,7 @@ namespace Fisharebest\Webtrees\Http\RequestHandlers; use Fisharebest\Webtrees\Services\UserService; use Fisharebest\Webtrees\TestCase; +use Fisharebest\Webtrees\User; /** * @covers \Fisharebest\Webtrees\Http\RequestHandlers\DeleteUser @@ -33,16 +34,17 @@ class DeleteUserTest extends TestCase */ public function testDeleteUser(): void { - $user_service = new UserService(); - $user = $user_service->create('user1', 'real1', 'email1', 'pass1'); - $request = self::createRequest('POST', ['route' => 'delete-user'], ['user_id' => $user->id()]); - $response = app(DeleteUser::class)->handle($request); + $user = $this->createMock(User::class); + $user->method('id')->willReturn(1); - // UserService caches user records - app('cache.array')->forget(UserService::class . $user->id()); + $user_service = $this->createMock(UserService::class); + $user_service->expects($this->once())->method('find')->willReturn($user); + + $request = self::createRequest(self::METHOD_POST, [], ['user_id' => $user->id()]); + $handler = new DeleteUser($user_service); + $response = $handler->handle($request); self::assertSame(self::STATUS_NO_CONTENT, $response->getStatusCode()); - self::assertNull($user_service->find($user->id())); } /** @@ -52,8 +54,12 @@ class DeleteUserTest extends TestCase */ public function testDeleteNonExistingUser(): void { - $request = self::createRequest('POST', ['route' => 'delete-user'], ['user_id' => 98765]); - app(DeleteUser::class)->handle($request); + $user_service = $this->createMock(UserService::class); + $user_service->expects($this->once())->method('find')->willReturn(null); + + $request = self::createRequest(self::METHOD_POST, [], ['user_id' => 98765]); + $handler = new DeleteUser($user_service); + $response = $handler->handle($request); } /** @@ -63,9 +69,15 @@ class DeleteUserTest extends TestCase */ public function testCannotDeleteAdministrator(): void { - $user = app(UserService::class)->create('user1', 'real1', 'email1', 'pass1'); - $user->setPreference('canadmin', '1'); - $request = self::createRequest('POST', ['route' => 'delete-user'], ['user_id' => $user->id()]); - app(DeleteUser::class)->handle($request); + $user = $this->createMock(User::class); + $user->method('id')->willReturn(1); + $user->expects($this->once())->method('getPreference')->with('canadmin')->willReturn('1'); + + $user_service = $this->createMock(UserService::class); + $user_service->expects($this->once())->method('find')->willReturn($user); + + $request = self::createRequest(self::METHOD_POST, [], ['user_id' => $user->id()]); + $handler = new DeleteUser($user_service); + $handler->handle($request); } } diff --git a/tests/app/Http/RequestHandlers/LoginPageTest.php b/tests/app/Http/RequestHandlers/LoginPageTest.php new file mode 100644 index 0000000000..03be2d3d52 --- /dev/null +++ b/tests/app/Http/RequestHandlers/LoginPageTest.php @@ -0,0 +1,55 @@ +<?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 Fisharebest\Webtrees\TestCase; +use Fisharebest\Webtrees\User; +use Fisharebest\Webtrees\View; + +/** + * @covers \Fisharebest\Webtrees\Http\RequestHandlers\LoginPage + */ +class LoginPageTest extends TestCase +{ + /** + * @return void + */ + public function testLoginPage(): void + { + View::share('tree', null); + $request = self::createRequest(); + $handler = new LoginPage(); + $response = $handler->handle($request); + + self::assertSame(self::STATUS_OK, $response->getStatusCode()); + } + + /** + * @return void + */ + public function testLoginPageAlreadyLoggedIn(): void + { + $user = $this->createMock(User::class); + $request = self::createRequest()->withAttribute('user', $user); + $handler = new LoginPage(); + $response = $handler->handle($request); + + self::assertSame(self::STATUS_FOUND, $response->getStatusCode()); + } +} diff --git a/tests/app/Http/RequestHandlers/MasqueradeAsUserTest.php b/tests/app/Http/RequestHandlers/MasqueradeAsUserTest.php index eaf3b60e7c..3d5fc02958 100644 --- a/tests/app/Http/RequestHandlers/MasqueradeAsUserTest.php +++ b/tests/app/Http/RequestHandlers/MasqueradeAsUserTest.php @@ -22,27 +22,32 @@ use Fisharebest\Webtrees\Auth; use Fisharebest\Webtrees\Services\UserService; use Fisharebest\Webtrees\Session; use Fisharebest\Webtrees\TestCase; - -use function app; +use Fisharebest\Webtrees\User; /** * @covers \Fisharebest\Webtrees\Http\RequestHandlers\MasqueradeAsUser */ class MasqueradeAsUserTest extends TestCase { - protected static $uses_database = true; - /** * @return void */ - public function xtestMasqueradeAsUser(): void + public function testMasqueradeAsUser(): void { - $user1 = app(UserService::class)->create('user1', 'real1', 'email1', 'pass1'); - $user2 = app(UserService::class)->create('user2', 'real2', 'email2', 'pass2'); + $user1 = $this->createMock(User::class); + $user1->method('id')->willReturn(1); + + $user2 = $this->createMock(User::class); + $user2->method('id')->willReturn(2); - $request = self::createRequest('POST', ['route' => 'masquerade'], ['user_id' => $user2->id()]) + $user_service = $this->createMock(UserService::class); + $user_service->expects($this->once())->method('find')->willReturn($user2); + + $request = self::createRequest(self::METHOD_POST, [], ['user_id' => $user2->id()]) ->withAttribute('user', $user1); - $response = app(MasqueradeAsUser::class)->handle($request); + + $handler = new MasqueradeAsUser($user_service); + $response = $handler->handle($request); self::assertSame(self::STATUS_NO_CONTENT, $response->getStatusCode()); self::assertSame($user2->id(), Auth::id()); @@ -54,26 +59,39 @@ class MasqueradeAsUserTest extends TestCase */ public function testCannotMasqueradeAsSelf(): void { - $user = app(UserService::class)->create('user', 'real', 'email', 'pass'); - Auth::login($user); + $user = $this->createMock(User::class); + $user->method('id')->willReturn(1); + + $user_service = $this->createMock(UserService::class); + $user_service->expects($this->once())->method('find')->willReturn($user); - $request = self::createRequest('POST', ['route' => 'masquerade'], ['user_id' => $user->id()]) + $request = self::createRequest(self::METHOD_POST, [], ['user_id' => $user->id()]) ->withAttribute('user', $user); - $response = app(MasqueradeAsUser::class)->handle($request); + + $handler = new MasqueradeAsUser($user_service); + $response = $handler->handle($request); self::assertSame(self::STATUS_NO_CONTENT, $response->getStatusCode()); - self::assertSame($user->id(), Auth::id()); self::assertNull(Session::get('masquerade')); } /** * @expectedException \Symfony\Component\HttpKernel\Exception\NotFoundHttpException - * @expectedExceptionMessage User ID 98765 not found + * @expectedExceptionMessage User ID 2 not found * @return void */ - public function xtestMasqueradeAsNonExistingUser(): void + public function testMasqueradeAsNonExistingUser(): void { - $request = self::createRequest('POST', ['route' => 'masquerade'], ['user_id' => 98765]); - app(MasqueradeAsUser::class)->handle($request); + $user = $this->createMock(User::class); + $user->method('id')->willReturn(1); + + $user_service = $this->createMock(UserService::class); + $user_service->expects($this->once())->method('find')->willReturn(null); + + $request = self::createRequest(self::METHOD_POST, [], ['user_id' => 2]) + ->withAttribute('user', $user); + + $handler = new MasqueradeAsUser($user_service); + $handler->handle($request); } } diff --git a/tests/app/Http/RequestHandlers/ModuleActionTest.php b/tests/app/Http/RequestHandlers/ModuleActionTest.php index 074757b886..f9cb57398c 100644 --- a/tests/app/Http/RequestHandlers/ModuleActionTest.php +++ b/tests/app/Http/RequestHandlers/ModuleActionTest.php @@ -41,7 +41,7 @@ class ModuleActionTest extends TestCase $user = new GuestUser(); $module_service = new ModuleService(); $handler = new ModuleAction($module_service, $user); - $request = self::createRequest('GET', ['route' => 'module', 'module' => 'faq', 'action' => 'Show', 'ged' => $tree->name()]) + $request = self::createRequest(self::METHOD_GET, ['route' => 'module', 'module' => 'faq', 'action' => 'Show', 'ged' => $tree->name()]) ->withAttribute('tree', $tree); app()->instance(ServerRequestInterface::class, $request); @@ -61,7 +61,7 @@ class ModuleActionTest extends TestCase $user = new GuestUser(); $module_service = new ModuleService(); $handler = new ModuleAction($module_service, $user); - $request = self::createRequest('GET', ['route' => 'module', 'module' => 'faq', 'action' => 'Fish']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'module', 'module' => 'faq', 'action' => 'Fish']); $handler->handle($request); } @@ -75,7 +75,7 @@ class ModuleActionTest extends TestCase $user = new GuestUser(); $module_service = new ModuleService(); $handler = new ModuleAction($module_service, $user); - $request = self::createRequest('GET', ['route' => 'module', 'module' => 'fish', 'action' => 'Show']); + $request = self::createRequest(self::METHOD_GET, ['route' => 'module', 'module' => 'fish', 'action' => 'Show']); $response = $handler->handle($request); $this->assertSame(self::STATUS_OK, $response->getStatusCode()); @@ -93,7 +93,7 @@ class ModuleActionTest extends TestCase $user = new GuestUser(); $module_service = new ModuleService(); $handler = new ModuleAction($module_service, $user); - $request = self::createRequest('GET', ['route' => 'module', 'module' => 'faq', 'action' => 'Admin', 'ged' => $tree->name()]); + $request = self::createRequest(self::METHOD_GET, ['route' => 'module', 'module' => 'faq', 'action' => 'Admin', 'ged' => $tree->name()]); $handler->handle($request); } } diff --git a/tests/app/Http/RequestHandlers/PasswordRequestPageTest.php b/tests/app/Http/RequestHandlers/PasswordRequestPageTest.php new file mode 100644 index 0000000000..eca2b61faa --- /dev/null +++ b/tests/app/Http/RequestHandlers/PasswordRequestPageTest.php @@ -0,0 +1,53 @@ +<?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 Fisharebest\Webtrees\TestCase; +use Fisharebest\Webtrees\User; + +/** + * @covers \Fisharebest\Webtrees\Http\RequestHandlers\PasswordRequestPage + */ +class PasswordRequestPageTest extends TestCase +{ + /** + * @return void + */ + public function testPasswordRequestPage(): void + { + $request = self::createRequest(); + $handler = new PasswordRequestPage(); + $response = $handler->handle($request); + + self::assertSame(self::STATUS_OK, $response->getStatusCode()); + } + + /** + * @return void + */ + public function testPasswordRequestPageAlreadyLoggedIn(): void + { + $user = $this->createMock(User::class); + $request = self::createRequest()->withAttribute('user', $user); + $handler = new PasswordRequestPage(); + $response = $handler->handle($request); + + self::assertSame(self::STATUS_FOUND, $response->getStatusCode()); + } +} diff --git a/tests/app/Http/RequestHandlers/PasswordResetPageTest.php b/tests/app/Http/RequestHandlers/PasswordResetPageTest.php new file mode 100644 index 0000000000..4e140ee1af --- /dev/null +++ b/tests/app/Http/RequestHandlers/PasswordResetPageTest.php @@ -0,0 +1,65 @@ +<?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\ResetHandlers; + +use Fisharebest\Webtrees\Http\RequestHandlers\PasswordResetPage; +use Fisharebest\Webtrees\Services\UserService; +use Fisharebest\Webtrees\TestCase; +use Fisharebest\Webtrees\User; +use Fisharebest\Webtrees\View; + +/** + * @covers \Fisharebest\Webtrees\Http\RequestHandlers\PasswordResetPage + */ +class PasswordResetPageTest extends TestCase +{ + /** + * @return void + */ + public function testPasswordResetPageWithValidToken(): void + { + $user = $this->createMock(User::class); + + $user_service = $this->createMock(UserService::class); + $user_service->expects($this->once())->method('findByToken')->willReturn($user); + + View::share('tree', null); + + $request = self::createRequest(); + $handler = new PasswordResetPage($user_service); + $response = $handler->handle($request); + + self::assertSame(self::STATUS_OK, $response->getStatusCode()); + } + + /** + * @return void + */ + public function testPasswordResetPageWithoutValidToken(): void + { + $user_service = $this->createMock(UserService::class); + $user_service->expects($this->once())->method('findByToken')->willReturn(null); + + $request = self::createRequest(); + $handler = new PasswordResetPage($user_service); + $response = $handler->handle($request); + + self::assertSame(self::STATUS_FOUND, $response->getStatusCode()); + } +} diff --git a/tests/app/Http/RequestHandlers/PingTest.php b/tests/app/Http/RequestHandlers/PingTest.php index 62618e29d3..589942c219 100644 --- a/tests/app/Http/RequestHandlers/PingTest.php +++ b/tests/app/Http/RequestHandlers/PingTest.php @@ -21,53 +21,60 @@ namespace Fisharebest\Webtrees\Http\RequestHandlers; use Fisharebest\Webtrees\Services\ServerCheckService; use Fisharebest\Webtrees\Services\UserService; use Fisharebest\Webtrees\TestCase; +use Illuminate\Support\Collection; /** * @covers \Fisharebest\Webtrees\Http\RequestHandlers\Ping */ class PingTest extends TestCase { - protected static $uses_database = true; - /** * @return void */ - public function testPing(): void + public function testPingOK(): void { - $handler = new Ping(new ServerCheckService()); - $request = self::createRequest('GET'); - $response = $handler->handle($request); + $server_check_service = $this->createMock(ServerCheckService::class); + $server_check_service->expects($this->once())->method('serverErrors')->willReturn(new Collection()); + $server_check_service->expects($this->once())->method('serverWarnings')->willReturn(new Collection()); + + $request = self::createRequest(); + $handler = new Ping($server_check_service); + $response = $handler->handle($request); self::assertSame(self::STATUS_OK, $response->getStatusCode()); self::assertSame('OK', (string) $response->getBody()); } /** - * @expectedException \Symfony\Component\HttpKernel\Exception\NotFoundHttpException - * @expectedExceptionMessage User ID 98765 not found * @return void */ - public function testDeleteNonExistingUser(): void + public function testPingWarnings(): void { - $user_service = new UserService(); - $user_service->create('user1', 'real1', 'email1', 'pass1'); - $handler = new DeleteUser($user_service); - $request = self::createRequest('POST', ['route' => 'delete-user'], ['user_id' => 98765]); - $handler->handle($request); + $server_check_service = $this->createMock(ServerCheckService::class); + $server_check_service->expects($this->once())->method('serverErrors')->willReturn(new Collection()); + $server_check_service->expects($this->once())->method('serverWarnings')->willReturn(new Collection('warning')); + + $request = self::createRequest(); + $handler = new Ping($server_check_service); + $response = $handler->handle($request); + + self::assertSame(self::STATUS_OK, $response->getStatusCode()); + self::assertSame('WARNING', (string) $response->getBody()); } /** - * @expectedException \Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException - * @expectedExceptionMessage Cannot delete an administrator * @return void */ - public function testCannotDeleteAdministrator(): void + public function testPingErrors(): void { - $user_service = new UserService(); - $user = $user_service->create('user1', 'real1', 'email1', 'pass1'); - $user->setPreference('canadmin', '1'); - $handler = new DeleteUser($user_service); - $request = self::createRequest('POST', ['route' => 'delete-user'], ['user_id' => $user->id()]); - $handler->handle($request); + $server_check_service = $this->createMock(ServerCheckService::class); + $server_check_service->expects($this->once())->method('serverErrors')->willReturn(new Collection('error')); + + $request = self::createRequest(); + $handler = new Ping($server_check_service); + $response = $handler->handle($request); + + self::assertSame(self::STATUS_OK, $response->getStatusCode()); + self::assertSame('ERROR', (string) $response->getBody()); } } diff --git a/tests/app/Http/RequestHandlers/PrivacyPolicyTest.php b/tests/app/Http/RequestHandlers/PrivacyPolicyTest.php index ff2e03312e..75ba31987b 100644 --- a/tests/app/Http/RequestHandlers/PrivacyPolicyTest.php +++ b/tests/app/Http/RequestHandlers/PrivacyPolicyTest.php @@ -30,8 +30,8 @@ class PrivacyPolicyTest extends TestCase */ public function testHandler(): void { - $request = self::createRequest('POST', ['route' => 'privacy-policy']); - $response = app(PrivacyPolicy::class)->handle($request); + $request = self::createRequest(); + $response = app(PrivacyPolicy::class)->handle($request); self::assertSame(self::STATUS_OK, $response->getStatusCode()); } diff --git a/tests/app/Http/RequestHandlers/SelectLanguageTest.php b/tests/app/Http/RequestHandlers/SelectLanguageTest.php index 138d5d701a..e2be952c90 100644 --- a/tests/app/Http/RequestHandlers/SelectLanguageTest.php +++ b/tests/app/Http/RequestHandlers/SelectLanguageTest.php @@ -27,8 +27,6 @@ use Fisharebest\Webtrees\TestCase; */ class SelectLanguageTest extends TestCase { - protected static $uses_database = true; - /** * @return void */ @@ -36,7 +34,7 @@ class SelectLanguageTest extends TestCase { $user = new GuestUser(); $handler = new SelectLanguage($user); - $request = self::createRequest('POST', ['route' => 'language'], ['language' => 'fr']); + $request = self::createRequest(self::METHOD_POST, [], ['language' => 'fr']); $response = $handler->handle($request); self::assertSame(self::STATUS_NO_CONTENT, $response->getStatusCode()); @@ -50,7 +48,7 @@ class SelectLanguageTest extends TestCase $user_service = new UserService(); $user = $user_service->create('user', 'real', 'email', 'pass'); $handler = new SelectLanguage($user); - $request = self::createRequest('POST', ['route' => 'language'], ['language' => 'fr']); + $request = self::createRequest(self::METHOD_POST, [], ['language' => 'fr']); $response = $handler->handle($request); self::assertSame(self::STATUS_NO_CONTENT, $response->getStatusCode()); diff --git a/tests/app/Http/RequestHandlers/SelectThemeTest.php b/tests/app/Http/RequestHandlers/SelectThemeTest.php index 2f445c7524..1da460c1d3 100644 --- a/tests/app/Http/RequestHandlers/SelectThemeTest.php +++ b/tests/app/Http/RequestHandlers/SelectThemeTest.php @@ -19,28 +19,29 @@ declare(strict_types=1); namespace Fisharebest\Webtrees\Http\RequestHandlers; use Fisharebest\Webtrees\GuestUser; -use Fisharebest\Webtrees\Services\UserService; use Fisharebest\Webtrees\TestCase; +use Fisharebest\Webtrees\User; /** * @covers \Fisharebest\Webtrees\Http\RequestHandlers\SelectTheme */ class SelectThemeTest extends TestCase { - protected static $uses_database = true; - /** * @return void */ public function testSelectThemeForGuest(): void { - $user = new GuestUser(); - $handler = new SelectTheme($user); - $request = self::createRequest('POST', ['route' => 'theme'], ['theme' => 'FOO']); + $user = $this->createMock(GuestUser::class); + $user->expects($this->once())->method('setPreference')->with('theme', 'FOO'); + + $request = self::createRequest(self::METHOD_POST, [], ['theme' => 'FOO']) + ->withAttribute('user', $user); + + $handler = new SelectTheme(); $response = $handler->handle($request); self::assertSame(self::STATUS_NO_CONTENT, $response->getStatusCode()); - self::assertSame('FOO', $user->getPreference('theme')); } /** @@ -48,13 +49,15 @@ class SelectThemeTest extends TestCase */ public function testSelectThemeForUser(): void { - $user_service = new UserService(); - $user = $user_service->create('user', 'real', 'email', 'pass'); - $handler = new SelectTheme($user); - $request = self::createRequest('POST', ['route' => 'theme'], ['theme' => 'FOO']); - $response = $handler->handle($request); + $user = $this->createMock(User::class); + $user->expects($this->once())->method('setPreference')->with('theme', 'FOO'); + + $request = self::createRequest(self::METHOD_POST, [], ['theme' => 'FOO']) + ->withAttribute('user', $user); + + $handler = new SelectTheme(); + $response = $handler->handle($request); self::assertSame(self::STATUS_NO_CONTENT, $response->getStatusCode()); - self::assertSame('FOO', $user->getPreference('theme')); } } |
