PluginTest.php in Drupal 8
File
core/tests/Drupal/Tests/Component/Annotation/PluginTest.php
View source
<?php
namespace Drupal\Tests\Component\Annotation;
use Drupal\Component\Annotation\Plugin;
use PHPUnit\Framework\TestCase;
class PluginTest extends TestCase {
public function testGet() {
$plugin = new PluginStub([
1 => 'oak',
'foo' => 'bar',
'biz' => [
'baz' => 'boom',
],
'nestedAnnotation' => new Plugin([
'foo' => 'bar',
]),
]);
$this
->assertEquals([
'defaultProperty' => 'testvalue',
1 => 'oak',
'foo' => 'bar',
'biz' => [
'baz' => 'boom',
],
'nestedAnnotation' => [
'foo' => 'bar',
],
], $plugin
->get());
$plugin = new Plugin([]);
$this
->assertEquals([], $plugin
->get());
}
public function testGetProvider() {
$plugin = new Plugin([
'provider' => 'example',
]);
$this
->assertEquals('example', $plugin
->getProvider());
}
public function testSetProvider() {
$plugin = new Plugin([]);
$plugin
->setProvider('example');
$this
->assertEquals('example', $plugin
->getProvider());
}
public function testGetId() {
$plugin = new Plugin([
'id' => 'example',
]);
$this
->assertEquals('example', $plugin
->getId());
}
public function testGetClass() {
$plugin = new Plugin([
'class' => 'example',
]);
$this
->assertEquals('example', $plugin
->getClass());
}
public function testSetClass() {
$plugin = new Plugin([]);
$plugin
->setClass('example');
$this
->assertEquals('example', $plugin
->getClass());
}
}
class PluginStub extends Plugin {
protected $defaultProperty = 'testvalue';
}