| @@ 310-333 (lines=24) @@ | ||
| 307 | * @see \eZ\Publish\API\Repository\RoleService::createRoleDraft() |
|
| 308 | * @depends eZ\Publish\API\Repository\Tests\RoleServiceTest::testNewRoleCreateStruct |
|
| 309 | */ |
|
| 310 | public function testCreateRoleDraft() |
|
| 311 | { |
|
| 312 | $repository = $this->getRepository(); |
|
| 313 | ||
| 314 | /* BEGIN: Use Case */ |
|
| 315 | ||
| 316 | $roleService = $repository->getRoleService(); |
|
| 317 | $roleCreate = $roleService->newRoleCreateStruct('roleName'); |
|
| 318 | ||
| 319 | // @todo uncomment when support for multilingual names and descriptions is added EZP-24776 |
|
| 320 | // $roleCreate->mainLanguageCode = 'eng-US'; |
|
| 321 | ||
| 322 | $roleDraft = $roleService->createRole($roleCreate); |
|
| 323 | $roleService->publishRoleDraft($roleDraft); |
|
| 324 | $role = $roleService->loadRole($roleDraft->id); |
|
| 325 | $newRoleDraft = $roleService->createRoleDraft($role); |
|
| 326 | ||
| 327 | /* END: Use Case */ |
|
| 328 | ||
| 329 | $this->assertInstanceOf( |
|
| 330 | '\\eZ\\Publish\\API\\Repository\\Values\\User\\RoleDraft', |
|
| 331 | $newRoleDraft |
|
| 332 | ); |
|
| 333 | } |
|
| 334 | ||
| 335 | /** |
|
| 336 | * Test for the createRole() method. |
|
| @@ 825-848 (lines=24) @@ | ||
| 822 | * @depends eZ\Publish\API\Repository\Tests\RoleServiceTest::testNewRoleUpdateStruct |
|
| 823 | * @depends eZ\Publish\API\Repository\Tests\RoleServiceTest::testLoadRoleDraft |
|
| 824 | */ |
|
| 825 | public function testUpdateRoleDraft() |
|
| 826 | { |
|
| 827 | $repository = $this->getRepository(); |
|
| 828 | ||
| 829 | /* BEGIN: Use Case */ |
|
| 830 | $roleService = $repository->getRoleService(); |
|
| 831 | $roleCreate = $roleService->newRoleCreateStruct('newRole'); |
|
| 832 | ||
| 833 | // @todo uncomment when support for multilingual names and descriptions is added EZP-24776 |
|
| 834 | // $roleCreate->mainLanguageCode = 'eng-US'; |
|
| 835 | ||
| 836 | $roleDraft = $roleService->createRole($roleCreate); |
|
| 837 | ||
| 838 | $roleUpdate = $roleService->newRoleUpdateStruct(); |
|
| 839 | $roleUpdate->identifier = 'updatedRole'; |
|
| 840 | ||
| 841 | $updatedRole = $roleService->updateRoleDraft($roleDraft, $roleUpdate); |
|
| 842 | /* END: Use Case */ |
|
| 843 | ||
| 844 | // Now verify that our change was saved |
|
| 845 | $role = $roleService->loadRoleDraft($updatedRole->id); |
|
| 846 | ||
| 847 | $this->assertEquals($role->identifier, 'updatedRole'); |
|
| 848 | } |
|
| 849 | ||
| 850 | /** |
|
| 851 | * Test for the updateRole() method. |
|
| @@ 915-934 (lines=20) @@ | ||
| 912 | * @depends eZ\Publish\API\Repository\Tests\RoleServiceTest::testCreateRole |
|
| 913 | * @depends eZ\Publish\API\Repository\Tests\RoleServiceTest::testLoadRoles |
|
| 914 | */ |
|
| 915 | public function testDeleteRole() |
|
| 916 | { |
|
| 917 | $repository = $this->getRepository(); |
|
| 918 | ||
| 919 | /* BEGIN: Use Case */ |
|
| 920 | $roleService = $repository->getRoleService(); |
|
| 921 | $roleCreate = $roleService->newRoleCreateStruct('newRole'); |
|
| 922 | ||
| 923 | // @todo uncomment when support for multilingual names and descriptions is added EZP-24776 |
|
| 924 | // $roleCreate->mainLanguageCode = 'eng-US'; |
|
| 925 | ||
| 926 | $roleDraft = $roleService->createRole($roleCreate); |
|
| 927 | $roleService->publishRoleDraft($roleDraft); |
|
| 928 | $role = $roleService->loadRole($roleDraft->id); |
|
| 929 | ||
| 930 | $roleService->deleteRole($role); |
|
| 931 | /* END: Use Case */ |
|
| 932 | ||
| 933 | $this->assertEquals(5, count($roleService->loadRoles())); |
|
| 934 | } |
|
| 935 | ||
| 936 | /** |
|
| 937 | * Test for the deleteRoleDraft() method. |
|
| @@ 660-686 (lines=27) @@ | ||
| 657 | * |
|
| 658 | * @return \eZ\Publish\API\Repository\Values\User\Role |
|
| 659 | */ |
|
| 660 | private function createRole() |
|
| 661 | { |
|
| 662 | $repository = $this->getRepository(); |
|
| 663 | ||
| 664 | /* BEGIN: Inline */ |
|
| 665 | // Get the role service |
|
| 666 | $roleService = $repository->getRoleService(); |
|
| 667 | ||
| 668 | // Get new policy create struct |
|
| 669 | $policyCreate = $roleService->newPolicyCreateStruct('content', '*'); |
|
| 670 | ||
| 671 | // Get a role create struct instance and set properties |
|
| 672 | $roleCreate = $roleService->newRoleCreateStruct('testRole'); |
|
| 673 | ||
| 674 | // @todo uncomment when support for multilingual names and descriptions is added EZP-24776 |
|
| 675 | // $roleCreate->mainLanguageCode = 'eng-GB'; |
|
| 676 | ||
| 677 | $roleCreate->addPolicy($policyCreate); |
|
| 678 | ||
| 679 | // Create a new role instance. |
|
| 680 | $roleDraft = $roleService->createRole($roleCreate); |
|
| 681 | $roleService->publishRoleDraft($roleDraft); |
|
| 682 | $role = $roleService->loadRole($roleDraft->id); |
|
| 683 | /* END: Inline */ |
|
| 684 | ||
| 685 | return $role; |
|
| 686 | } |
|
| 687 | } |
|
| 688 | ||