protected function CommentAttributesTest::setUp in Drupal 10        
                          
                  
                        Same name and namespace in other branches
- 8 core/modules/rdf/tests/src/Functional/CommentAttributesTest.php \Drupal\Tests\rdf\Functional\CommentAttributesTest::setUp()
- 9 core/modules/rdf/tests/src/Functional/CommentAttributesTest.php \Drupal\Tests\rdf\Functional\CommentAttributesTest::setUp()
File
 
   - core/modules/rdf/tests/src/Functional/CommentAttributesTest.php, line 55
Class
  
  - CommentAttributesTest 
- Tests the RDFa markup of comments.
Namespace
  Drupal\Tests\rdf\Functional
Code
protected function setUp() : void {
  parent::setUp();
  
  user_role_change_permissions(RoleInterface::ANONYMOUS_ID, [
    'access comments' => TRUE,
    'post comments' => TRUE,
    'skip comment approval' => TRUE,
  ]);
  
  $this
    ->setCommentAnonymous(CommentInterface::ANONYMOUS_MAY_CONTACT);
  $this
    ->setCommentPreview(DRUPAL_OPTIONAL);
  $this
    ->setCommentForm(TRUE);
  $this
    ->setCommentSubject(TRUE);
  $this
    ->setCommentSettings('comment_default_mode', CommentManagerInterface::COMMENT_MODE_THREADED, 'Comment paging changed.');
  
  $this->baseUri = Url::fromRoute('<front>', [], [
    'absolute' => TRUE,
  ])
    ->toString();
  $this->nodeUri = $this->node
    ->toUrl('canonical', [
    'absolute' => TRUE,
  ])
    ->toString();
  
  $article_mapping = rdf_get_mapping('node', 'article');
  $comment_count_mapping = [
    'properties' => [
      'sioc:num_replies',
    ],
    'datatype' => 'xsd:integer',
    'datatype_callback' => [
      'callable' => 'Drupal\\rdf\\CommonDataConverter::rawValue',
    ],
  ];
  $article_mapping
    ->setFieldMapping('comment_count', $comment_count_mapping)
    ->save();
  
  $user_mapping = rdf_get_mapping('user', 'user');
  $username_mapping = [
    'properties' => [
      'foaf:name',
    ],
  ];
  $user_mapping
    ->setFieldMapping('name', $username_mapping)
    ->save();
  $user_mapping
    ->setFieldMapping('homepage', [
    'properties' => [
      'foaf:page',
    ],
    'mapping_type' => 'rel',
  ])
    ->save();
  
  $mapping = rdf_get_mapping('comment', 'comment');
  $mapping
    ->setBundleMapping([
    'types' => [
      'sioc:Post',
      'sioct:Comment',
    ],
  ])
    ->save();
  $field_mappings = [
    'subject' => [
      'properties' => [
        'dc:title',
      ],
    ],
    'created' => [
      'properties' => [
        'dc:date',
        'dc:created',
      ],
      'datatype' => 'xsd:dateTime',
      'datatype_callback' => [
        'callable' => 'Drupal\\rdf\\CommonDataConverter::dateIso8601Value',
      ],
    ],
    'changed' => [
      'properties' => [
        'dc:modified',
      ],
      'datatype' => 'xsd:dateTime',
      'datatype_callback' => [
        'callable' => 'Drupal\\rdf\\CommonDataConverter::dateIso8601Value',
      ],
    ],
    'comment_body' => [
      'properties' => [
        'content:encoded',
      ],
    ],
    'pid' => [
      'properties' => [
        'sioc:reply_of',
      ],
      'mapping_type' => 'rel',
    ],
    'uid' => [
      'properties' => [
        'sioc:has_creator',
      ],
      'mapping_type' => 'rel',
    ],
    'name' => [
      'properties' => [
        'foaf:name',
      ],
    ],
  ];
  
  foreach ($field_mappings as $field_name => $field_mapping) {
    $mapping
      ->setFieldMapping($field_name, $field_mapping)
      ->save();
  }
}