X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=Civi%2FTest%2FApi3TestTrait.php;h=1c99c0490b42d3e61f84014020a4704a7d43216e;hb=ff93f0ab952152f0eb2edc6c32b5ee156724005e;hp=9ae2c7d1726be3a75053f768b1c75c4f7a390f8c;hpb=204a280cecb3e0ce675363a7b1b31ee8befc2a31;p=civicrm-core.git diff --git a/Civi/Test/Api3TestTrait.php b/Civi/Test/Api3TestTrait.php index 9ae2c7d172..1c99c0490b 100644 --- a/Civi/Test/Api3TestTrait.php +++ b/Civi/Test/Api3TestTrait.php @@ -249,6 +249,7 @@ trait Api3TestTrait { * - object * * @return array|int + * @throws \CRM_Core_Exception */ public function callAPISuccessGetValue($entity, $params, $type = NULL) { $params += [ @@ -257,10 +258,10 @@ trait Api3TestTrait { ]; $result = $this->civicrm_api($entity, 'getvalue', $params); if (is_array($result) && (!empty($result['is_error']) || isset($result['values']))) { - throw new \Exception('Invalid getvalue result' . print_r($result, TRUE)); + throw new \CRM_Core_Exception('Invalid getvalue result' . print_r($result, TRUE)); } if ($type) { - if ($type == 'integer') { + if ($type === 'integer') { // api seems to return integers as strings $this->assertTrue(is_numeric($result), "expected a numeric value but got " . print_r($result, 1)); } @@ -306,9 +307,13 @@ trait Api3TestTrait { $indexBy = in_array($v3Action, ['get', 'create', 'replace']) && !$sequential ? 'id' : NULL; $onlyId = !empty($v3Params['format.only_id']); $onlySuccess = !empty($v3Params['format.is_success']); - if (!empty($v3Params['filters']['is_current']) || !empty($params['isCurrent'])) { + if (!empty($v3Params['filters']['is_current']) || !empty($v3Params['isCurrent'])) { $v4Params['current'] = TRUE; } + $language = !empty($v3Params['options']['language']) ? $v3Params['options']['language'] : \CRM_Utils_Array::value('option.language', $v3Params); + if ($language) { + $v4Params['language'] = $language; + } $toRemove = ['option.', 'return', 'api.', 'format.']; $chains = []; $custom = [];