Tests creating instances of every views plugin.
This will iterate through all plugins from _views_fetch_plugin_data().
public function testPluginInstances() {
$container = drupal_container();
foreach ($this->definitions as $type => $plugins) {
// Get a plugin manager for this type.
$manager = $container
->get("plugin.manager.views.{$type}");
foreach ($plugins as $id => $definition) {
// Get a reflection class for this plugin.
// We only want to test true plugins, i.e. They extend PluginBase.
$reflection = new \ReflectionClass($definition['class']);
if ($reflection
->isSubclassOf('Drupal\\views\\Plugin\\views\\PluginBase')) {
// Create a plugin instance and check what it is. This is not just
// good to check they can be created but for throwing any notices for
// method signatures etc... too.
$instance = $manager
->createInstance($id);
$this
->assertTrue($instance instanceof $definition['class'], format_string('Instance of @type:@id created', array(
'@type' => $type,
'@id' => $id,
)));
}
}
}
}