function StandardProfileTest::assertRdfaNodeCommentProperties
Same name in other branches
- 8.9.x core/modules/rdf/tests/src/Functional/StandardProfileTest.php \Drupal\Tests\rdf\Functional\StandardProfileTest::assertRdfaNodeCommentProperties()
Tests output for comment properties on nodes in full page view mode.
@internal
1 call to StandardProfileTest::assertRdfaNodeCommentProperties()
- StandardProfileTest::doArticleRdfaTests in core/
modules/ rdf/ tests/ src/ Functional/ StandardProfileTest.php - Tests that article data is exposed using RDFa.
File
-
core/
modules/ rdf/ tests/ src/ Functional/ StandardProfileTest.php, line 466
Class
- StandardProfileTest
- Tests the RDF mappings and RDFa markup on top of the standard profile.
Namespace
Drupal\Tests\rdf\FunctionalCode
protected function assertRdfaNodeCommentProperties() : void {
$this->drupalGet($this->article
->toUrl());
// Relationship between node and comment.
$expected_value = [
'type' => 'uri',
'value' => $this->articleCommentUri,
];
$this->assertTrue($this->hasRdfProperty($this->getSession()
->getPage()
->getContent(), $this->baseUri, $this->articleUri, 'http://schema.org/comment', $expected_value), "Relationship between node and comment found (schema:comment).");
// Comment type.
$this->assertEquals('schema:Comment', $this->getElementRdfType($this->article
->toUrl(), $this->baseUri, $this->articleCommentUri), 'Comment type was found (schema:Comment).');
// Comment title.
$expected_value = [
'type' => 'literal',
'value' => $this->articleComment
->get('subject')->value,
'lang' => 'en',
];
$this->assertTrue($this->hasRdfProperty($this->getSession()
->getPage()
->getContent(), $this->baseUri, $this->articleCommentUri, 'http://schema.org/name', $expected_value), "Article comment title was found (schema:name).");
// Comment created date.
$expected_value = [
'type' => 'literal',
'value' => $this->container
->get('date.formatter')
->format($this->articleComment
->get('created')->value, 'custom', 'c', 'UTC'),
'lang' => 'en',
];
$this->assertTrue($this->hasRdfProperty($this->getSession()
->getPage()
->getContent(), $this->baseUri, $this->articleCommentUri, 'http://schema.org/dateCreated', $expected_value), "Article comment created date was found (schema:dateCreated).");
// Comment body.
$text = $this->articleComment
->get('comment_body')->value;
$expected_value = [
'type' => 'literal',
// There is an extra carriage return in the value when parsing comments as
// output by Bartik, so it must be added to the expected value.
'value' => "{$text}" . PHP_EOL,
'lang' => 'en',
];
$this->assertTrue($this->hasRdfProperty($this->getSession()
->getPage()
->getContent(), $this->baseUri, $this->articleCommentUri, 'http://schema.org/text', $expected_value), "Article comment body was found (schema:text).");
// Comment uid.
$expected_value = [
'type' => 'uri',
'value' => $this->commenterUri,
];
$this->assertTrue($this->hasRdfProperty($this->getSession()
->getPage()
->getContent(), $this->baseUri, $this->articleCommentUri, 'http://schema.org/author', $expected_value), "Article comment author was found (schema:author).");
// Comment author type.
$this->assertEquals('schema:Person', $this->getElementRdfType($this->article
->toUrl(), $this->baseUri, $this->commenterUri), 'Comment author type was found (schema:Person).');
// Comment author name.
$expected_value = [
'type' => 'literal',
'value' => $this->webUser
->getAccountName(),
];
$this->assertTrue($this->hasRdfProperty($this->getSession()
->getPage()
->getContent(), $this->baseUri, $this->commenterUri, 'http://schema.org/name', $expected_value), "Comment author name was found (schema:name).");
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.