object = new PMA_Footer(); unset($GLOBALS['error_message']); unset($GLOBALS['sql_query']); $GLOBALS['error_handler'] = new PMA_Error_Handler(); unset($_POST); } /** * Tears down the fixture, for example, closes a network connection. * This method is called after a test is executed. * * @access protected * @return void */ protected function tearDown() { unset($this->object); } /** * Call private functions by setting visibility to public. * * @param string $name method name * @param array $params parameters for the invocation * * @return the output from the private method. */ private function _callPrivateFunction($name, $params) { $class = new ReflectionClass('PMA_Footer'); $method = $class->getMethod($name); $method->setAccessible(true); return $method->invokeArgs($this->object, $params); } /** * Test for _getDebugMessage * * @return void * * @group medium */ public function testGetDebugMessage() { $_SESSION['debug']['queries'] = array( 'abc' => array( 'count' => 1, 'time' => 0.2, 'query' => 'SELECT * FROM `pma_bookmark` WHERE 1', ), 'def' => array( 'count' => 1, 'time' => 2.5, 'query' => 'SELECT * FROM `db` WHERE 1', ), ); $this->assertRegExp( '/
2 queries executed 2 times in 2.7 seconds
/',
            $this->_callPrivateFunction(
                '_getDebugMessage',
                array()
            )
        );
    }

    /**
     * Test for _getSelfLink
     *
     * @return void
     */
    public function testGetSelfLink()
    {

        $GLOBALS['cfg']['NavigationBarIconic'] = false;
        $GLOBALS['cfg']['ServerDefault'] = 1;

        $this->assertEquals(
            '',
            $this->_callPrivateFunction(
                '_getSelfLink',
                array(
                    $this->object->getSelfUrl()
                )
            )
        );
    }

    /**
     * Test for _getSelfLink
     *
     * @return void
     */
    public function testGetSelfLinkWithImage()
    {

        $GLOBALS['cfg']['NavigationBarIconic'] = true;
        $GLOBALS['cfg']['ServerDefault'] = 1;
        $_SESSION['PMA_Theme'] = new PMA_Theme();
        $GLOBALS['pmaThemeImage'] = 'image';

        $this->assertEquals(
            '',
            $this->_callPrivateFunction(
                '_getSelfLink',
                array(
                    $this->object->getSelfUrl()
                )
            )
        );
    }

    /**
     * Test for disable
     *
     * @return void
     */
    public function testDisable()
    {
        $footer = new PMA_Footer();
        $footer->disable();
        $this->assertEquals(
            '',
            $footer->getDisplay()
        );
    }

    /**
     * Test for footer when ajax enabled
     *
     * @return void
     */
    public function testAjax()
    {
        $footer = new PMA_Footer();
        $footer->setAjax(true);
        $this->assertEquals(
            '',
            $footer->getDisplay()
        );
    }
    
    /**
     * Test for footer get Scripts
     *
     * @return void
     */
    public function testGetScripts()
    {
        $footer = new PMA_Footer();
        $this->assertContains(
            '