moduleHandler = $this->prophesize(ModuleHandlerInterface::class); $migration_plugin = $this->prophesize(MigrateProcessInterface::class); $this->plugin = new BlockVisibility([], 'block_visibility_pages', [], $this->moduleHandler->reveal(), $migration_plugin->reveal()); } /** * @covers ::transform */ public function testTransformNoData() { $transformed_value = $this->plugin->transform([0, '', []], $this->migrateExecutable, $this->row, 'destinationproperty'); $this->assertEmpty($transformed_value); } /** * @covers ::transform */ public function testTransformSinglePageWithFront() { $visibility = $this->plugin->transform([0, '', []], $this->migrateExecutable, $this->row, 'destinationproperty'); $this->assertSame('request_path', $visibility['request_path']['id']); $this->assertTrue($visibility['request_path']['negate']); $this->assertSame('', $visibility['request_path']['pages']); } /** * @covers ::transform */ public function testTransformMultiplePagesWithFront() { $visibility = $this->plugin->transform([1, "foo\n/bar\rbaz\r\n", []], $this->migrateExecutable, $this->row, 'destinationproperty'); $this->assertSame('request_path', $visibility['request_path']['id']); $this->assertFalse($visibility['request_path']['negate']); $this->assertSame("/foo\n/bar\n/baz\n", $visibility['request_path']['pages']); } /** * @covers ::transform */ public function testTransformPhpEnabled() { $this->moduleHandler->moduleExists('php')->willReturn(TRUE); $visibility = $this->plugin->transform([2, 'migrateExecutable, $this->row, 'destinationproperty'); $this->assertSame('php', $visibility['php']['id']); $this->assertFalse($visibility['php']['negate']); $this->assertSame('moduleHandler->moduleExists('php')->willReturn(FALSE); $transformed_value = $this->plugin->transform([2, 'migrateExecutable, $this->row, 'destinationproperty'); $this->assertEmpty($transformed_value); } }