in util/ActionTest.php [89:135]
private function do(array $actions): string
{
$vars = [
':endpoint' => '',
':params' => '',
':catch' => '',
':response-check' => '',
':code' => '',
':headers' => '',
':reset-client' => ''
];
foreach ($actions as $key => $value) {
if (method_exists($this, $key)) {
if (!empty($value)) {
$this->$key($value, $vars);
}
} else {
// headers
if (!empty($this->headers)) {
$vars[':headers'] = $this->formatHeaders($this->headers);
$vars[':reset-client'] = '$this->client = Utility::getClient();';
$this->resetHeaders();
}
// Check if {} (new stdClass) is the parameter of an endpoint
if ($value instanceof stdClass && empty(get_object_vars($value))) {
$params = '';
} else {
$params = $this->adjustClientParams($value);
$params = var_export($params, true);
$params = $this->convertDollarValueInVariable($params); // replace '$var' or '${var}' in $var
$params = $this->convertStdClass($params); // convert "stdClass::__set_state(array())" in "(object)[]"
}
$vars[':endpoint'] = $this->convertDotToArrow($key);
//$vars[':params'] = str_replace("\n","\n" . self::TAB14, $params);
$vars[':params'] = $params;
}
}
// ignore client parameter
if (isset($this->clientParams['ignore'])) {
$vars[':code'] = $this->clientParams['ignore'];
if (is_array($vars[':code'])) {
return YamlTests::render(self::TEMPLATE_ENDPOINT_TRY_CATCH_ARRAY, $vars);
}
return YamlTests::render(self::TEMPLATE_ENDPOINT_TRY_CATCH, $vars);
}
return YamlTests::render(self::TEMPLATE_ENDPOINT, $vars);
}