Translated using Weblate.
[phpmyadmin.git] / test / libraries / PMA_GIS_modifyQuery_test.php
blob8894c2a89fc14279ed3a2a5fffc3d63e31a473e3
1 <?php
2 /**
3 * Tests for PMA_GIS_modifyQuery method
5 * @package PhpMyAdmin-test
6 */
8 require_once 'libraries/sqlparser.lib.php';
9 require_once 'libraries/common.lib.php';
11 * Include to test
13 require_once 'libraries/gis_visualization.lib.php';
15 class PMA_GIS_modifyQueryTest extends PHPUnit_Framework_TestCase
17 /**
18 * Test PMA_GIS_modifyQuery method
20 * @param string $sql_query query to modify
21 * @param array $settings visualization settings
22 * @param string $modified_query modified query
24 * @dataProvider provider
25 * @return nothing
27 public function testModifyQuery($sql_query, $settings, $modified_query)
29 $this->assertEquals(
30 PMA_GIS_modifyQuery($sql_query, $settings),
31 $modified_query
35 /**
36 * data provider for testModifyQuery
38 * @return data for testModifyQuery
40 public function provider()
42 return array(
43 // select *
44 array(
45 'SELECT * FROM `foo` WHERE `bar` = `zoo`',
46 array('spatialColumn' => 'moo', 'labelColumn' => 'noo'),
47 'SELECT `noo`, ASTEXT(`moo`) AS `moo`, SRID(`moo`) AS `srid` FROM `foo` WHERE `bar` = `zoo`'
49 // select * with no label column
50 array(
51 'SELECT * FROM `foo` WHERE `bar` = `zoo`',
52 array('spatialColumn' => 'moo'),
53 'SELECT ASTEXT(`moo`) AS `moo`, SRID(`moo`) AS `srid` FROM `foo` WHERE `bar` = `zoo`'
55 // more columns
56 array(
57 'SELECT `aaa`, `moo`, `bbb`, `noo` FROM `foo` WHERE `bar` = `zoo`',
58 array('spatialColumn' => 'moo', 'labelColumn' => 'noo'),
59 'SELECT `noo`, ASTEXT(`moo`) AS `moo`, SRID(`moo`) AS `srid` FROM `foo` WHERE `bar` = `zoo`'
61 // no labelColumn defined
62 array(
63 'SELECT `moo`, `noo` FROM `foo` WHERE `bar` = `zoo`',
64 array('spatialColumn' => 'moo'),
65 'SELECT ASTEXT(`moo`) AS `moo`, SRID(`moo`) AS `srid` FROM `foo` WHERE `bar` = `zoo`'
67 // alias for spatialColumn
68 array(
69 'SELECT `aaa` AS `moo`, `noo` FROM `foo` WHERE `bar` = `zoo`',
70 array('spatialColumn' => 'moo', 'labelColumn' => 'noo'),
71 'SELECT `noo`, ASTEXT(`aaa`) AS `moo`, SRID(`aaa`) AS `srid` FROM `foo` WHERE `bar` = `zoo`'
73 // alias for labelColumn
74 array(
75 'SELECT `moo`, `bbb` AS `noo` FROM `foo` WHERE `bar` = `zoo`',
76 array('spatialColumn' => 'moo', 'labelColumn' => 'noo'),
77 'SELECT `bbb` AS `noo`, ASTEXT(`moo`) AS `moo`, SRID(`moo`) AS `srid` FROM `foo` WHERE `bar` = `zoo`'
79 // with database names
80 array(
81 'SELECT `db`.`moo`, `db`.`noo` FROM `foo` WHERE `bar` = `zoo`',
82 array('spatialColumn' => 'moo', 'labelColumn' => 'noo'),
83 'SELECT `db`.`noo`, ASTEXT(`db`.`moo`) AS `moo`, SRID(`db`.`moo`) AS `srid` FROM `foo` WHERE `bar` = `zoo`'
85 // database names plus alias
86 array(
87 'SELECT `db`.`aaa` AS `moo`, `noo` FROM `foo` WHERE `bar` = `zoo`',
88 array('spatialColumn' => 'moo', 'labelColumn' => 'noo'),
89 'SELECT `noo`, ASTEXT(`db`.`aaa`) AS `moo`, SRID(`db`.`aaa`) AS `srid` FROM `foo` WHERE `bar` = `zoo`'