function PluginTest::testGet
Same name in this branch
- 11.x core/tests/Drupal/Tests/Component/Plugin/Attribute/PluginTest.php \Drupal\Tests\Component\Plugin\Attribute\PluginTest::testGet()
Same name in other branches
- 9 core/tests/Drupal/Tests/Component/Annotation/PluginTest.php \Drupal\Tests\Component\Annotation\PluginTest::testGet()
- 8.9.x core/tests/Drupal/Tests/Component/Annotation/PluginTest.php \Drupal\Tests\Component\Annotation\PluginTest::testGet()
- 10 core/tests/Drupal/Tests/Component/Annotation/PluginTest.php \Drupal\Tests\Component\Annotation\PluginTest::testGet()
- 10 core/tests/Drupal/Tests/Component/Plugin/Attribute/PluginTest.php \Drupal\Tests\Component\Plugin\Attribute\PluginTest::testGet()
@covers ::__construct @covers ::parse @covers ::get
File
-
core/
tests/ Drupal/ Tests/ Component/ Annotation/ PluginTest.php, line 21
Class
- PluginTest
- @coversDefaultClass \Drupal\Component\Annotation\Plugin @group Annotation
Namespace
Drupal\Tests\Component\AnnotationCode
public function testGet() : void {
// Assert all values are accepted through constructor and default value is
// used for non existent but defined property.
$plugin = new PluginStub([
1 => 'oak',
'foo' => 'bar',
'biz' => [
'baz' => 'boom',
],
'nestedAnnotation' => new Plugin([
'foo' => 'bar',
]),
]);
$this->assertEquals([
// This property wasn't in our definition but is defined as a property on
// our plugin class.
'defaultProperty' => 'test_value',
1 => 'oak',
'foo' => 'bar',
'biz' => [
'baz' => 'boom',
],
'nestedAnnotation' => [
'foo' => 'bar',
],
], $plugin->get());
// Without default properties, we get a completely empty plugin definition.
$plugin = new Plugin([]);
$this->assertEquals([], $plugin->get());
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.