function DefaultLazyPluginCollectionTest::testAddInstanceId

Same name in other branches
  1. 9 core/tests/Drupal/Tests/Core/Plugin/DefaultLazyPluginCollectionTest.php \Drupal\Tests\Core\Plugin\DefaultLazyPluginCollectionTest::testAddInstanceId()
  2. 8.9.x core/tests/Drupal/Tests/Core/Plugin/DefaultLazyPluginCollectionTest.php \Drupal\Tests\Core\Plugin\DefaultLazyPluginCollectionTest::testAddInstanceId()
  3. 11.x core/tests/Drupal/Tests/Core/Plugin/DefaultLazyPluginCollectionTest.php \Drupal\Tests\Core\Plugin\DefaultLazyPluginCollectionTest::testAddInstanceId()

@covers ::addInstanceId

File

core/tests/Drupal/Tests/Core/Plugin/DefaultLazyPluginCollectionTest.php, line 121

Class

DefaultLazyPluginCollectionTest
@coversDefaultClass \Drupal\Core\Plugin\DefaultLazyPluginCollection @group Plugin

Namespace

Drupal\Tests\Core\Plugin

Code

public function testAddInstanceId() : void {
    $this->setupPluginCollection($this->exactly(4));
    $expected = [
        'banana' => 'banana',
        'cherry' => 'cherry',
        'apple' => 'apple',
    ];
    $this->defaultPluginCollection
        ->addInstanceId('apple');
    $result = $this->defaultPluginCollection
        ->getInstanceIds();
    $this->assertSame($expected, $result);
    $this->assertSame($expected, array_intersect_key($result, $this->defaultPluginCollection
        ->getConfiguration()));
    $expected = [
        'cherry' => 'cherry',
        'apple' => 'apple',
        'banana' => 'banana',
    ];
    $this->defaultPluginCollection
        ->removeInstanceId('banana');
    $this->defaultPluginCollection
        ->addInstanceId('banana', $this->config['banana']);
    $result = $this->defaultPluginCollection
        ->getInstanceIds();
    $this->assertSame($expected, $result);
    $this->assertSame($expected, array_intersect_key($result, $this->defaultPluginCollection
        ->getConfiguration()));
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.