diff options
| author | Greg Roach <fisharebest@webtrees.net> | 2019-01-31 14:28:26 +0000 |
|---|---|---|
| committer | Greg Roach <fisharebest@webtrees.net> | 2019-01-31 19:45:07 +0000 |
| commit | e5a6b4d4f6f6e7ff2fba7ae2cf27546ae68a79cc (patch) | |
| tree | 6d3095048a00ab3941129f8f5231d4b9483776d2 /tests/feature | |
| parent | 3c04ac885329c9488ff9db0a765e872bf41b9781 (diff) | |
| download | webtrees-e5a6b4d4f6f6e7ff2fba7ae2cf27546ae68a79cc.tar.gz webtrees-e5a6b4d4f6f6e7ff2fba7ae2cf27546ae68a79cc.tar.bz2 webtrees-e5a6b4d4f6f6e7ff2fba7ae2cf27546ae68a79cc.zip | |
Refactor class User - use NULL-object pattern for guests and temporary users, create UserService
Diffstat (limited to 'tests/feature')
| -rw-r--r-- | tests/feature/EmbeddedVariablesTest.php | 32 | ||||
| -rw-r--r-- | tests/feature/ImportGedcomTest.php | 2 | ||||
| -rw-r--r-- | tests/feature/IndividualListTest.php | 14 | ||||
| -rw-r--r-- | tests/feature/UserAdminTest.php | 32 |
4 files changed, 54 insertions, 26 deletions
diff --git a/tests/feature/EmbeddedVariablesTest.php b/tests/feature/EmbeddedVariablesTest.php index 157b8c0c9b..0f33bc58c6 100644 --- a/tests/feature/EmbeddedVariablesTest.php +++ b/tests/feature/EmbeddedVariablesTest.php @@ -17,22 +17,48 @@ declare(strict_types=1); namespace Fisharebest\Webtrees; +use Fisharebest\Webtrees\Services\ModuleService; +use Fisharebest\Webtrees\Services\UserService; + /** * Test the user functions * * @coversNothing */ -class ImportGedcomTest extends \Fisharebest\Webtrees\TestCase +class EmbeddedVariablesTest extends TestCase { protected static $uses_database = true; /** * @return void */ - public function testImportTrees(): void + public function testAllEmbeddedVariables(): void { + global $tree; // For Date::display() + $tree = $this->importTree('demo.ged'); - $this->assertSame(1, $tree->id()); + $statistics = new Statistics(new ModuleService(), $tree, new UserService()); + + $text = $statistics->embedTags('#getAllTagsTable#'); + + $this->assertNotEquals('#getAllTagsTable#', $text); + } + + /** + * @return void + */ + public function testAllEmbeddedVariablesWithEmptyTree(): void + { + global $tree; // For Date::display() + + $tree = Tree::create('name', 'title'); + $tree->deleteGenealogyData(false); + + $statistics = new Statistics(new ModuleService(), $tree, new UserService()); + + $text = $statistics->embedTags('#getAllTagsTable#'); + + $this->assertNotEquals('#getAllTagsTable#', $text); } } diff --git a/tests/feature/ImportGedcomTest.php b/tests/feature/ImportGedcomTest.php index 157b8c0c9b..d69c536f58 100644 --- a/tests/feature/ImportGedcomTest.php +++ b/tests/feature/ImportGedcomTest.php @@ -22,7 +22,7 @@ namespace Fisharebest\Webtrees; * * @coversNothing */ -class ImportGedcomTest extends \Fisharebest\Webtrees\TestCase +class ImportGedcomTest extends TestCase { protected static $uses_database = true; diff --git a/tests/feature/IndividualListTest.php b/tests/feature/IndividualListTest.php index 3f2b645a72..d454034cf7 100644 --- a/tests/feature/IndividualListTest.php +++ b/tests/feature/IndividualListTest.php @@ -19,8 +19,6 @@ namespace Fisharebest\Webtrees; use Fisharebest\Localization\Locale\LocaleEnUs; use Fisharebest\Webtrees\Http\Controllers\ListController; -use Fisharebest\Webtrees\Module\ModuleThemeInterface; -use Fisharebest\Webtrees\Module\WebtreesTheme; use Fisharebest\Webtrees\Services\IndividualListService; use Fisharebest\Webtrees\Services\LocalizationService; use Symfony\Component\HttpFoundation\Request; @@ -31,7 +29,7 @@ use Symfony\Component\HttpFoundation\Response; * * @coversNothing */ -class IndividualListTest extends \Fisharebest\Webtrees\TestCase +class IndividualListTest extends TestCase { protected static $uses_database = true; @@ -53,23 +51,23 @@ class IndividualListTest extends \Fisharebest\Webtrees\TestCase $individual_list_service = new IndividualListService($localization_service, $tree); $controller = new ListController($individual_list_service, $localization_service); - $request = new Request(['route' => 'individual-list']); + $request = new Request(['route' => 'individual-list']); $response = $controller->individualList($request, $tree, $user); $this->assertSame(Response::HTTP_OK, $response->getStatusCode()); - $request = new Request(['route' => 'individual-list', 'alpha' => 'B']); + $request = new Request(['route' => 'individual-list', 'alpha' => 'B']); $response = $controller->individualList($request, $tree, $user); $this->assertSame(Response::HTTP_OK, $response->getStatusCode()); - $request = new Request(['route' => 'individual-list', 'alpha' => ',']); + $request = new Request(['route' => 'individual-list', 'alpha' => ',']); $response = $controller->individualList($request, $tree, $user); $this->assertSame(Response::HTTP_OK, $response->getStatusCode()); - $request = new Request(['route' => 'individual-list', 'alpha' => '@']); + $request = new Request(['route' => 'individual-list', 'alpha' => '@']); $response = $controller->individualList($request, $tree, $user); $this->assertSame(Response::HTTP_OK, $response->getStatusCode()); - $request = new Request(['route' => 'individual-list', 'surname' => 'BRAUN']); + $request = new Request(['route' => 'individual-list', 'surname' => 'BRAUN']); $response = $controller->individualList($request, $tree, $user); $this->assertSame(Response::HTTP_OK, $response->getStatusCode()); } diff --git a/tests/feature/UserAdminTest.php b/tests/feature/UserAdminTest.php index a8f91b8222..2733ade15b 100644 --- a/tests/feature/UserAdminTest.php +++ b/tests/feature/UserAdminTest.php @@ -18,13 +18,13 @@ declare(strict_types=1); namespace Fisharebest\Webtrees; use Fisharebest\Webtrees\Http\Controllers\AdminUsersController; -use Fisharebest\Webtrees\Services\DatatablesService; +use Fisharebest\Webtrees\Services\UserService; use Symfony\Component\HttpFoundation\Request; /** * Test the user administration pages */ -class UserAdminTest extends \Fisharebest\Webtrees\TestCase +class UserAdminTest extends TestCase { protected static $uses_database = true; @@ -35,8 +35,9 @@ class UserAdminTest extends \Fisharebest\Webtrees\TestCase */ public function testUserDetailsAreShownOnUserAdminPage(): void { - $admin = User::create('AdminName', 'Administrator', 'admin@example.com', 'secret'); - $user = User::create('UserName', 'RealName', 'user@example.com', 'secret'); + $user_service = new UserService(); + $user_service->create('AdminName', 'Administrator', 'admin@example.com', 'secret'); + $user_service->create('UserName', 'RealName', 'user@example.com', 'secret'); $controller = app()->make(AdminUsersController::class); $response = app()->dispatch($controller, 'data'); @@ -56,8 +57,9 @@ class UserAdminTest extends \Fisharebest\Webtrees\TestCase */ public function testFilteringUserAdminPage(): void { - $admin = User::create('AdminName', 'Administrator', 'admin@example.com', 'secret'); - $user = User::create('UserName', 'RealName', 'user@example.com', 'secret'); + $user_service = new UserService(); + $user_service->create('AdminName', 'Administrator', 'admin@example.com', 'secret'); + $user_service->create('UserName', 'RealName', 'user@example.com', 'secret'); $request = new Request(['search' => ['value' => 'admin']]); app()->instance(Request::class, $request); @@ -79,8 +81,9 @@ class UserAdminTest extends \Fisharebest\Webtrees\TestCase */ public function testPaginatingUserAdminPage(): void { - $admin = User::create('AdminName', 'Administrator', 'admin@example.com', 'secret'); - $user = User::create('UserName', 'RealName', 'user@example.com', 'secret'); + $user_service = new UserService(); + $user_service->create('AdminName', 'Administrator', 'admin@example.com', 'secret'); + $user_service->create('UserName', 'RealName', 'user@example.com', 'secret'); $request = new Request(['length' => 1]); app()->instance(Request::class, $request); @@ -98,16 +101,17 @@ class UserAdminTest extends \Fisharebest\Webtrees\TestCase */ public function testSortingUserAdminPage(): void { - $admin = User::create('AdminName', 'Administrator', 'admin@example.com', 'secret'); - $user = User::create('UserName', 'RealName', 'user@example.com', 'secret'); + $user_service = new UserService(); + $user_service->create('AdminName', 'Administrator', 'admin@example.com', 'secret'); + $user_service->create('UserName', 'RealName', 'user@example.com', 'secret'); $request = new Request(['order' => [['column' => 2, 'dir' => 'asc']]]); app()->instance(Request::class, $request); $controller = app()->make(AdminUsersController::class); $response = app()->dispatch($controller, 'data'); - $pos1 = strpos($response->getContent(), 'AdminName'); - $pos2 = strpos($response->getContent(), 'UserName'); + $pos1 = strpos($response->getContent(), 'AdminName'); + $pos2 = strpos($response->getContent(), 'UserName'); $this->assertLessThan($pos2, $pos1); $request = new Request(['order' => [['column' => 2, 'dir' => 'desc']]]); @@ -115,8 +119,8 @@ class UserAdminTest extends \Fisharebest\Webtrees\TestCase $controller = app()->make(AdminUsersController::class); $response = app()->dispatch($controller, 'data'); - $pos1 = strpos($response->getContent(), 'AdminName'); - $pos2 = strpos($response->getContent(), 'UserName'); + $pos1 = strpos($response->getContent(), 'AdminName'); + $pos2 = strpos($response->getContent(), 'UserName'); $this->assertGreaterThan($pos2, $pos1); } } |
