#/** * @package Akismet */ /* Plugin Name: Akismet Anti-spam: Spam Protection Plugin URI: https://akismet.com/ Description: Used by millions, Akismet is quite possibly the best way in the world to protect your blog from spam. Akismet Anti-spam keeps your site protected even while you sleep. To get started: activate the Akismet plugin and then go to your Akismet Settings page to set up your API key. Version: 5.4 Requires at least: 5.8 Requires PHP: 7.2 Author: Automattic - Anti-spam Team Author URI: https://automattic.com/wordpress-plugins/ License: GPLv2 or later Text Domain: akismet */ /* This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Copyright 2005-2025 Automattic, Inc. */ // Make sure we don't expose any info if called directly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
| Server IP : 62.109.13.187 / Your IP : 216.73.216.11 [ Web Server : Apache/2.4.6 (CentOS) mpm-itk/2.4.7-04 OpenSSL/1.0.2k-fips PHP/8.2.28 System : Linux robothost.ru 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64 User : mosrembit ( 6064) PHP Version : 8.2.28 Disable Function : NONE Domains : 0 Domains MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/share/phpMyAdmin/test/classes/ |
Upload File : |
<?php
/**
* Tests for Error_Handler
*
* @package PhpMyAdmin-test
*/
/*
* Include to test.
*/
require_once 'libraries/Error_Handler.class.php';
require_once 'libraries/sanitizing.lib.php';
require_once 'libraries/Util.class.php';
require_once 'libraries/Theme.class.php';
/**
* Test for PMA_Error_Handler class.
*
* @package PhpMyAdmin-test
*/
class PMA_Error_Handler_Test extends PHPUnit_Framework_TestCase
{
/**
* @access protected
*/
protected $object;
/**
* Sets up the fixture, for example, opens a network connection.
* This method is called before a test is executed.
*
* @access protected
* @return void
*/
protected function setUp()
{
$this->object = new PMA_Error_Handler();
$GLOBALS['pmaThemeImage'] = 'image';
$_SESSION['PMA_Theme'] = PMA_Theme::load('./themes/pmahomme');
$_SESSION['PMA_Theme'] = new PMA_Theme();
}
/**
* 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 protected functions by setting visibility to public.
*
* @param string $name method name
* @param array $params parameters for the invocation
*
* @return the output from the protected method.
*/
private function _callProtectedFunction($name, $params)
{
$class = new ReflectionClass('PMA_Error_Handler');
$method = $class->getMethod($name);
$method->setAccessible(true);
return $method->invokeArgs($this->object, $params);
}
/**
* Data provider for testHandleError
*
* @return array data for testHandleError
*/
public function providerForTestHandleError()
{
return array(
array(
E_RECOVERABLE_ERROR,
'Compile Error',
'error.txt',
12,
'Compile Error',
'',
),
array(
E_USER_NOTICE,
'User notice',
'error.txt',
12,
'User notice',
'User notice',
)
);
}
/**
* Test for getDispErrors when PHP errors are not shown
*
* @param integer $errno error number
* @param string $errstr error string
* @param string $errfile error file
* @param integer $errline error line
* @param string $output_show expected output if showing of errors is
* enabled
* @param string $output_hide expected output if showing of errors is
* disabled and 'sendErrorReports' is set to 'never'
*
* @return void
*
* @dataProvider providerForTestHandleError
*/
public function testGetDispErrorsForDisplayFalse(
$errno, $errstr, $errfile, $errline, $output_show, $output_hide
) {
// TODO: Add other test cases for all combination of 'sendErrorReports'
$GLOBALS['cfg']['SendErrorReports'] = 'never';
$this->object->handleError($errno, $errstr, $errfile, $errline);
$output = $this->object->getDispErrors();
if ($output_hide == '') {
$this->assertEquals('', $output);
} else {
$this->assertContains($output_hide, $output);
}
}
/**
* Test for getDispErrors when PHP errors are shown
*
* @param integer $errno error number
* @param string $errstr error string
* @param string $errfile error file
* @param integer $errline error line
* @param string $output_show expected output if showing of errors is
* enabled
* @param string $output_hide expected output if showing of errors is
* disabled
*
* @return void
*
* @dataProvider providerForTestHandleError
*/
public function testGetDispErrorsForDisplayTrue(
$errno, $errstr, $errfile, $errline, $output_show, $output_hide
) {
$this->object->handleError($errno, $errstr, $errfile, $errline);
$this->assertContains(
$output_show,
$this->object->getDispErrors()
);
}
/**
* Test for checkSavedErrors
*
* @return void
*/
public function testCheckSavedErrors()
{
$_SESSION['errors'] = array();
$this->_callProtectedFunction(
'checkSavedErrors',
array()
);
$this->assertTrue(!isset($_SESSION['errors']));
}
/**
* Test for countErrors
*
* @return void
*
* @group medium
*/
public function testCountErrors()
{
$err = array();
$err[] = new PMA_Error('256', 'Compile Error', 'error.txt', 15);
$errHandler = $this->getMock('PMA_Error_Handler');
$errHandler->expects($this->any())
->method('getErrors')
->will($this->returnValue($err));
$this->assertEquals(
0,
$this->object->countErrors()
);
}
/**
* Test for countUserErrors
*
* @return void
*/
public function testCountUserErrors()
{
$err = array();
$err[] = new PMA_Error('256', 'Compile Error', 'error.txt', 15);
$errHandler = $this->getMock('PMA_Error_Handler');
$errHandler->expects($this->any())
->method('countErrors', 'getErrors')
->will($this->returnValue(1, $err));
$this->assertEquals(
0,
$this->object->countUserErrors()
);
}
/**
* Test for hasUserErrors
*
* @return void
*/
public function testHasUserErrors()
{
$this->assertFalse($this->object->hasUserErrors());
}
/**
* Test for hasErrors
*
* @return void
*/
public function testHasErrors()
{
$this->assertFalse($this->object->hasErrors());
}
/**
* Test for countDisplayErrors
*
* @return void
*/
public function testCountDisplayErrorsForDisplayTrue()
{
$this->assertEquals(
0,
$this->object->countDisplayErrors()
);
}
/**
* Test for countDisplayErrors
*
* @return void
*/
public function testCountDisplayErrorsForDisplayFalse()
{
$this->assertEquals(
0,
$this->object->countDisplayErrors()
);
}
/**
* Test for hasDisplayErrors
*
* @return void
*/
public function testHasDisplayErrors()
{
$this->assertFalse($this->object->hasDisplayErrors());
}
}