public function GatherContentUploadTestBase::getMultilangNode in GatherContent 8.5
Returns the Node for the multilang ProcessPane test.
Return value
\Drupal\node\Entity\Node Node object.
1 call to GatherContentUploadTestBase::getMultilangNode()
- GatherContentUploadTest::testProcessGroupsMultilang in gathercontent_upload/
tests/ src/ Kernel/ GatherContentUploadTest.php - Tests field manipulation for multilingual content.
File
- gathercontent_upload/
tests/ src/ Kernel/ GatherContentUploadTestBase.php, line 161
Class
- GatherContentUploadTestBase
- Class GatherContentUploadTestBase.
Namespace
Drupal\Tests\gathercontent_upload\KernelCode
public function getMultilangNode() {
$manager = \Drupal::service('content_translation.manager');
$image = File::create([
'uri' => 'public://example1.png',
]);
$image
->save();
$image2 = File::create([
'uri' => 'public://example2.png',
]);
$image2
->save();
$paragraph_1 = Paragraph::create([
'type' => 'para',
'langcode' => 'en',
'field_text' => 'Test paragraph field',
'field_image' => [
[
'target_id' => $image
->id(),
],
],
]);
$paragraph_1
->save();
$paragraph_1_hu = $paragraph_1
->addTranslation('hu');
$paragraph_1_hu->field_text
->setValue('Test multilang paragraph HU');
$paragraph_1_hu->field_image
->setValue([
[
'target_id' => $image2
->id(),
],
]);
$paragraph_1_hu
->save();
$paragraph_2 = Paragraph::create([
'type' => 'para_2',
'langcode' => 'en',
'field_text' => 'Test paragraph 2 field',
]);
$paragraph_2
->save();
$paragraph_2_hu = $paragraph_2
->addTranslation('hu');
$paragraph_2_hu->field_text
->setValue('Test multilang paragraph 2 HU');
$paragraph_2_hu
->save();
$term_1 = Term::create([
'vid' => 'tags',
'langcode' => 'en',
'name' => 'First choice',
'gathercontent_option_ids' => '1d4674fa-764e-40e9-839e-67093c1398f0',
]);
$term_1
->save();
$term_1_hu = Term::create([
'vid' => 'tags',
'langcode' => 'en',
'name' => 'Second choice',
'gathercontent_option_ids' => '35961a8e-7f64-4ba7-8a12-07e4bb3e1361',
]);
$term_1_hu
->save();
$term_2 = Term::create([
'vid' => 'tags',
'langcode' => 'en',
'name' => 'Choice1',
'gathercontent_option_ids' => 'f61122ad-bada-47d2-8481-0e8c72448c3f',
]);
$term_2
->save();
$term_2_hu = Term::create([
'vid' => 'tags',
'langcode' => 'en',
'name' => 'Choice2',
'gathercontent_option_ids' => '9c304ce9-0619-48eb-8a8e-b7e2ec157b28',
]);
$term_2_hu
->save();
$node = Node::create([
'title' => 'Test multilang node',
'langcode' => 'en',
'type' => 'test_content',
'body' => 'Test multilang body',
'field_guidodo' => 'Test guide',
'field_image' => [
[
'target_id' => $image
->id(),
],
],
'field_radio' => [
[
'target_id' => $term_1
->id(),
],
],
'field_tags' => [
[
'target_id' => $term_2
->id(),
],
],
'field_para' => [
[
'target_id' => $paragraph_1
->id(),
'target_revision_id' => $paragraph_1
->getRevisionId(),
],
[
'target_id' => $paragraph_2
->id(),
'target_revision_id' => $paragraph_2
->getRevisionId(),
],
],
]);
$node
->save();
$node_hu = $node
->addTranslation('hu');
$node_hu
->setTitle('Test multilang node HU');
$node_hu->body
->setValue('Test multilang body HU');
$node_hu->field_guidodo
->setValue('Test multilang guide HU');
$node_hu->field_image
->setValue([
[
'target_id' => $image2
->id(),
],
]);
$node_hu->field_radio
->setValue([
[
'target_id' => $term_1_hu
->id(),
],
]);
$node_hu->field_tags
->setValue([
[
'target_id' => $term_2_hu
->id(),
],
]);
$node_hu->field_para
->setValue([
[
'target_id' => $paragraph_1
->id(),
'target_revision_id' => $paragraph_1
->getRevisionId(),
],
[
'target_id' => $paragraph_2
->id(),
'target_revision_id' => $paragraph_2
->getRevisionId(),
],
]);
$manager
->getTranslationMetadata($node_hu)
->setSource('en');
$node_hu
->save();
return $node;
}