function MigrationLookupTest::testNoSkipValid

Same name and namespace in other branches
  1. 9 core/modules/migrate/tests/src/Unit/process/MigrationLookupTest.php \Drupal\Tests\migrate\Unit\process\MigrationLookupTest::testNoSkipValid()
  2. 8.9.x core/modules/migrate/tests/src/Unit/process/MigrationLookupTest.php \Drupal\Tests\migrate\Unit\process\MigrationLookupTest::testNoSkipValid()
  3. 10 core/modules/migrate/tests/src/Unit/process/MigrationLookupTest.php \Drupal\Tests\migrate\Unit\process\MigrationLookupTest::testNoSkipValid()

Tests that valid, but technically empty values are not skipped.

@dataProvider noSkipValidDataProvider

Parameters

mixed $value: A valid value.

File

core/modules/migrate/tests/src/Unit/process/MigrationLookupTest.php, line 146

Class

MigrationLookupTest
@coversDefaultClass <a href="/api/drupal/core%21modules%21migrate%21src%21Plugin%21migrate%21process%21MigrationLookup.php/class/MigrationLookup/11.x" title="Looks up the value of a property based on a previous migration." class="local">\Drupal\migrate\Plugin\migrate\process\MigrationLookup</a> @group migrate

Namespace

Drupal\Tests\migrate\Unit\process

Code

public function testNoSkipValid($value) : void {
    $migration_plugin = $this->prophesize(MigrationInterface::class);
    $migration_plugin_manager = $this->prophesize(MigrationPluginManagerInterface::class);
    $id_map = $this->prophesize(MigrateIdMapInterface::class);
    $id_map->lookupDestinationIds([
        $value,
    ])
        ->willReturn([]);
    $migration_plugin->getIdMap()
        ->willReturn($id_map->reveal());
    $configuration = [
        'migration' => 'foo',
        'no_stub' => TRUE,
    ];
    $migration_plugin->id()
        ->willReturn(uniqid());
    $migration_plugin_manager->createInstances([
        'foo',
    ])
        ->willReturn([
        'foo' => $migration_plugin->reveal(),
    ]);
    $migration = MigrationLookup::create($this->prepareContainer(), $configuration, '', [], $migration_plugin->reveal());
    $lookup = $migration->transform($value, $this->migrateExecutable, $this->row, 'foo');
    
    /* We provided no values and asked for no stub, so we should get NULL. */
    $this->assertNull($lookup);
}

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