123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166 |
- <?php
- class TableSortTest extends DrupalUnitTestCase {
-
- protected $GET = array();
- public static function getInfo() {
- return array(
- 'name' => 'Tablesort',
- 'description' => 'Tests table sorting.',
- 'group' => 'System',
- );
- }
- function setUp() {
-
- $this->GET = $_GET;
- parent::setUp();
- }
- function tearDown() {
-
- $_GET = $this->GET;
- parent::tearDown();
- }
-
- function testTableSortInit() {
-
- $headers = array('foo', 'bar', 'baz');
-
-
- $_GET = array('q' => 'jahwohl');
- $expected_ts = array(
- 'name' => 'foo',
- 'sql' => '',
- 'sort' => 'asc',
- 'query' => array(),
- );
- $ts = tablesort_init($headers);
- $this->verbose(strtr('$ts: <pre>!ts</pre>', array('!ts' => check_plain(var_export($ts, TRUE)))));
- $this->assertEqual($ts, $expected_ts, 'Simple table headers sorted correctly.');
-
-
- $_GET = array(
- 'q' => 'jahwohl',
-
-
- 'order' => 'bar',
- );
- $ts = tablesort_init($headers);
- $this->verbose(strtr('$ts: <pre>!ts</pre>', array('!ts' => check_plain(var_export($ts, TRUE)))));
- $this->assertEqual($ts, $expected_ts, 'Simple table headers plus non-overriding $_GET parameters sorted correctly.');
-
-
- $_GET = array(
- 'q' => 'jahwohl',
- 'sort' => 'DESC',
-
-
- 'alpha' => 'beta',
- );
- $expected_ts['sort'] = 'desc';
- $expected_ts['query'] = array('alpha' => 'beta');
- $ts = tablesort_init($headers);
- $this->verbose(strtr('$ts: <pre>!ts</pre>', array('!ts' => check_plain(var_export($ts, TRUE)))));
- $this->assertEqual($ts, $expected_ts, 'Simple table headers plus $_GET parameters sorted correctly.');
-
- $headers = array(
- 'foo',
- array(
- 'data' => '1',
- 'field' => 'one',
- 'sort' => 'asc',
- 'colspan' => 1,
- ),
- array(
- 'data' => '2',
- 'field' => 'two',
- 'sort' => 'desc',
- ),
- );
-
- $_GET = array(
- 'q' => 'jahwohl',
- 'order' => '2',
- );
- $ts = tablesort_init($headers);
- $expected_ts = array(
- 'name' => '2',
- 'sql' => 'two',
- 'sort' => 'desc',
- 'query' => array(),
- );
- $this->verbose(strtr('$ts: <pre>!ts</pre>', array('!ts' => check_plain(var_export($ts, TRUE)))));
- $this->assertEqual($ts, $expected_ts, 'Complex table headers sorted correctly.');
-
-
- $_GET = array(
- 'q' => 'jahwohl',
-
-
- 'order' => 'bar',
- );
- $ts = tablesort_init($headers);
- $expected_ts = array(
- 'name' => '1',
- 'sql' => 'one',
- 'sort' => 'asc',
- 'query' => array(),
- );
- $this->verbose(strtr('$ts: <pre>!ts</pre>', array('!ts' => check_plain(var_export($ts, TRUE)))));
- $this->assertEqual($ts, $expected_ts, 'Complex table headers plus non-overriding $_GET parameters sorted correctly.');
- unset($_GET['sort'], $_GET['order'], $_GET['alpha']);
-
-
- $_GET = array(
- 'q' => 'jahwohl',
- 'order' => '1',
- 'sort' => 'ASC',
-
-
- 'alpha' => 'beta',
- );
- $expected_ts = array(
- 'name' => '1',
- 'sql' => 'one',
- 'sort' => 'asc',
- 'query' => array('alpha' => 'beta'),
- );
- $ts = tablesort_init($headers);
- $this->verbose(strtr('$ts: <pre>!ts</pre>', array('!ts' => check_plain(var_export($ts, TRUE)))));
- $this->assertEqual($ts, $expected_ts, 'Complex table headers plus $_GET parameters sorted correctly.');
- unset($_GET['sort'], $_GET['order'], $_GET['alpha']);
- }
- }
|