public function BlazyUnitTest::testPreprocessBlazy in Blazy 8.2
Tests \Drupal\blazy\Blazy::preprocessBlazy.
@covers \Drupal\blazy\Blazy::preprocessBlazy @covers \Drupal\blazy\Blazy::urlAndDimensions @covers \Drupal\blazy\BlazyDefault::entitySettings @dataProvider providerPreprocessBlazy
Parameters
array $settings: The settings being tested.
object $item: Whether to provide image item, or not.
bool $expected_image: Whether to expect an image, or not.
bool $expected_iframe: Whether to expect an iframe, or not.
File
- tests/
src/ Unit/ BlazyUnitTest.php, line 99
Class
- BlazyUnitTest
- @coversDefaultClass \Drupal\blazy\Blazy
Namespace
Drupal\Tests\blazy\UnitCode
public function testPreprocessBlazy(array $settings, $item, $expected_image, $expected_iframe) {
$variables = [
'attributes' => [],
];
$build = $this->data;
$settings = array_merge($build['settings'], $settings);
$settings += BlazyDefault::itemSettings();
$settings['blazy'] = TRUE;
$settings['lazy'] = 'blazy';
$settings['image_style'] = '';
$settings['thumbnail_style'] = '';
if (!empty($settings['embed_url'])) {
$settings = array_merge(BlazyDefault::entitySettings(), $settings);
}
$variables['element']['#item'] = $item == TRUE ? $this->testItem : NULL;
$variables['element']['#settings'] = $settings;
Blazy::preprocessBlazy($variables);
$image = $expected_image == TRUE ? !empty($variables['image']) : empty($variables['image']);
$iframe = $expected_iframe == TRUE ? !empty($variables['iframe']) : empty($variables['iframe']);
$this
->assertTrue($image);
$this
->assertTrue($iframe);
$this
->assertEquals($settings['blazy'], $variables['settings']['blazy']);
}