X-Git-Url: http://www.aleph1.co.uk/gitweb/?a=blobdiff_plain;f=web%2Fcore%2Fmodules%2Fuser%2Ftests%2Fsrc%2FUnit%2FMenu%2FUserLocalTasksTest.php;fp=web%2Fcore%2Fmodules%2Fuser%2Ftests%2Fsrc%2FUnit%2FMenu%2FUserLocalTasksTest.php;h=b9986c9b4c3f6826609113a1a349fa5cde96d7f8;hb=a2bd1bf0c2c1f1a17d188f4dc0726a45494cefae;hp=0000000000000000000000000000000000000000;hpb=57c063afa3f66b07c4bbddc2d6129a96d90f0aad;p=yaffs-website diff --git a/web/core/modules/user/tests/src/Unit/Menu/UserLocalTasksTest.php b/web/core/modules/user/tests/src/Unit/Menu/UserLocalTasksTest.php new file mode 100644 index 000000000..b9986c9b4 --- /dev/null +++ b/web/core/modules/user/tests/src/Unit/Menu/UserLocalTasksTest.php @@ -0,0 +1,86 @@ +directoryList = ['user' => 'core/modules/user']; + parent::setUp(); + } + + /** + * Tests local task existence. + * + * @dataProvider getUserAdminRoutes + */ + public function testUserAdminLocalTasks($route, $expected) { + $this->assertLocalTasks($route, $expected); + } + + /** + * Provides a list of routes to test. + */ + public function getUserAdminRoutes() { + return [ + ['entity.user.collection', [['entity.user.collection', 'user.admin_permissions', 'entity.user_role.collection']]], + ['user.admin_permissions', [['entity.user.collection', 'user.admin_permissions', 'entity.user_role.collection']]], + ['entity.user_role.collection', [['entity.user.collection', 'user.admin_permissions', 'entity.user_role.collection']]], + ['entity.user.admin_form', [['user.account_settings_tab']]], + ]; + } + + /** + * Checks user listing local tasks. + * + * @dataProvider getUserLoginRoutes + */ + public function testUserLoginLocalTasks($route) { + $tasks = [ + 0 => ['user.register', 'user.pass', 'user.login'], + ]; + $this->assertLocalTasks($route, $tasks); + } + + /** + * Provides a list of routes to test. + */ + public function getUserLoginRoutes() { + return [ + ['user.login'], + ['user.register'], + ['user.pass'], + ]; + } + + /** + * Checks user listing local tasks. + * + * @dataProvider getUserPageRoutes + */ + public function testUserPageLocalTasks($route, $subtask = []) { + $tasks = [ + 0 => ['entity.user.canonical', 'entity.user.edit_form'], + ]; + if ($subtask) $tasks[] = $subtask; + $this->assertLocalTasks($route, $tasks); + } + + /** + * Provides a list of routes to test. + */ + public function getUserPageRoutes() { + return [ + ['entity.user.canonical'], + ['entity.user.edit_form'], + ]; + } + +}