public function PermissionEventTest::testIteratorAggregate in Organic groups 8
Check that the iterator has looped over all permissions correctly.
@covers ::getIterator
@dataProvider permissionsProvider
Parameters
\Drupal\og\PermissionInterface[] $permissions: An array of test permissions.
string $entity_type_id: The entity type ID of the group type to which the permissions apply.
string $bundle_id: The bundle ID of the group type to which the permissions apply.
array $group_content_bundle_ids: An array of group content bundle IDs to which the permissions apply, keyed by group content entity type ID.
File
- tests/
src/ Unit/ PermissionEventTest.php, line 574
Class
- PermissionEventTest
- Tests permission events.
Namespace
Drupal\Tests\og\UnitCode
public function testIteratorAggregate(array $permissions, $entity_type_id, $bundle_id, array $group_content_bundle_ids) {
$event = new PermissionEvent($entity_type_id, $bundle_id, $group_content_bundle_ids);
$event
->setPermissions($permissions);
foreach ($event as $name => $permission) {
$expected_permission = reset($permissions);
$expected_name = key($permissions);
$this
->assertEquals($expected_name, $name);
$this
->assertEquals($expected_permission, $permission);
array_shift($permissions);
}
// Check that the iterator has looped over all permissions correctly.
$this
->assertEmpty($permissions);
}