eZ\Publish\Core\Repository\Tests\Service\Mock\ContentTest::determineValuesForCreate PHP Method

determineValuesForCreate() protected method

Returns full, possibly redundant array of field values, indexed by field definition identifier and language code.
protected determineValuesForCreate ( string $mainLanguageCode, array $structFields, array $fieldDefinitions, array $languageCodes ) : array
$mainLanguageCode string
$structFields array
$fieldDefinitions array
$languageCodes array
return array
    protected function determineValuesForCreate($mainLanguageCode, array $structFields, array $fieldDefinitions, array $languageCodes)
    {
        $mappedStructFields = $this->mapStructFieldsForCreate($mainLanguageCode, $structFields, $fieldDefinitions);
        $values = array();
        foreach ($fieldDefinitions as $fieldDefinition) {
            $identifier = $fieldDefinition->identifier;
            foreach ($languageCodes as $languageCode) {
                if (!$fieldDefinition->isTranslatable) {
                    if (isset($mappedStructFields[$identifier][$mainLanguageCode])) {
                        $values[$identifier][$languageCode] = $mappedStructFields[$identifier][$mainLanguageCode];
                    } else {
                        $values[$identifier][$languageCode] = (string) $fieldDefinition->defaultValue;
                    }
                    continue;
                }
                if (isset($mappedStructFields[$identifier][$languageCode])) {
                    $values[$identifier][$languageCode] = $mappedStructFields[$identifier][$languageCode];
                    continue;
                }
                $values[$identifier][$languageCode] = (string) $fieldDefinition->defaultValue;
            }
        }
        return $this->stubValues($values);
    }
ContentTest