protected function prepareRole($name)
{
foreach ($this->sets[$name] as &$roleData) {
if (array_key_exists('envId', $roleData)) {
$roleData['envId'] = static::$testEnvId;
}
if (array_key_exists('accountId', $roleData)) {
$roleData['accountId'] = static::$user->getAccountId();
}
$settings = [];
if (array_key_exists('settings', $roleData)) {
$settings = $roleData['settings'];
unset($roleData['settings']);
}
/* @var $role Entity\Role */
$role = ApiTest::createEntity(new Entity\Role(), $roleData);
$roleData['id'] = $role->id;
foreach ($settings as $name => $value) {
ApiTest::createEntity(new Entity\RoleProperty(), ['name' => $name, 'value' => $value, 'roleId' => $role->id]);
ApiTest::toDelete(Entity\RoleProperty::class, [$role->id, $name]);
}
}
}