71 lines
1.6 KiB
PHP
71 lines
1.6 KiB
PHP
<?php
|
|
/**
|
|
* Abstract parent class for all Gis<Geom_type> test classes
|
|
*/
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace PhpMyAdmin\Tests\Gis;
|
|
|
|
use PhpMyAdmin\Tests\AbstractTestCase;
|
|
use function imagesx;
|
|
|
|
/**
|
|
* Abstract parent class for all Gis<Geom_type> test classes
|
|
*/
|
|
abstract class GisGeomTestCase extends AbstractTestCase
|
|
{
|
|
/** @var object */
|
|
protected $object;
|
|
|
|
/**
|
|
* test generateParams method
|
|
*
|
|
* @param string $wkt point in WKT form
|
|
* @param int|null $index index
|
|
* @param array $params expected output array
|
|
*
|
|
* @dataProvider providerForTestGenerateParams
|
|
*/
|
|
public function testGenerateParams(string $wkt, ?int $index, array $params): void
|
|
{
|
|
if ($index === null) {
|
|
$this->assertEquals(
|
|
$params,
|
|
$this->object->generateParams($wkt)
|
|
);
|
|
} else {
|
|
$this->assertEquals(
|
|
$params,
|
|
$this->object->generateParams($wkt, $index)
|
|
);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* test scaleRow method
|
|
*
|
|
* @param string $spatial spatial data of a row
|
|
* @param array $min_max expected results
|
|
*
|
|
* @dataProvider providerForTestScaleRow
|
|
*/
|
|
public function testScaleRow(string $spatial, array $min_max): void
|
|
{
|
|
$this->assertEquals(
|
|
$min_max,
|
|
$this->object->scaleRow($spatial)
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Tests whether content is a valid image.
|
|
*
|
|
* @param resource $object Image
|
|
*/
|
|
public function assertImage($object): void
|
|
{
|
|
$this->assertGreaterThan(0, imagesx($object));
|
|
}
|
|
}
|