/** *@dataProvider cases */ public function testCase($identifier, $viewport, $image, $expected) { $viewport = new \ImageCover\BackgroundCoverViewport($viewport[0], $viewport[1], isset($viewport[2]) ? $viewport[2] : null, isset($viewport[3]) ? $viewport[3] : null); $result = $viewport->computeUsedCrop($image[0], $image[1]); $this->assertEquals("({$expected[0]}, {$expected[1]})", "({$result[0]}, {$result[1]})", "[{$identifier}] position does not match"); $this->assertEquals("({$expected[2]} x {$expected[3]})", "({$result[2]} x {$result[3]})", "[{$identifier}] size does not match"); }
$fixtures = (require 'Fixture.php'); ?> <body style="width: 3000px"> <?php foreach ($fixtures as $fixture) { ?> <h2 style="clear: both"><?php echo $fixture[0]; ?> </h2> <?php $viewport = new \ImageCover\BackgroundCoverViewport($fixture[1][0], $fixture[1][1], isset($fixture[1][2]) ? $fixture[1][2] : null, isset($fixture[1][3]) ? $fixture[1][3] : null); $crop = $viewport->computeUsedCrop($fixture[2][0], $fixture[2][1]); ?> <div style="position: relative;"> <div style="margin: 10px; float: left; width: <?php echo $fixture[1][0]; ?> px; height: <?php echo $fixture[1][1]; ?> px; background-image: url(image.php?width=<?php echo $fixture[2][0]; ?> &height=<?php