| Server IP : 3.96.16.70 / Your IP : 216.73.216.15 Web Server : Apache System : Linux ip-172-31-26-103.ca-central-1.compute.internal 6.1.163-186.299.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Feb 24 16:35:42 UTC 2026 x86_64 User : ec2-user ( 1000) PHP Version : 8.4.18 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/html/prod1.wondermakr.com/phpmyadmin/test/classes/ |
Upload File : |
<?php
declare(strict_types=1);
namespace PhpMyAdmin\Tests;
use PhpMyAdmin\ConfigStorage\Relation;
use PhpMyAdmin\ConfigStorage\RelationCleanup;
use PhpMyAdmin\Message;
use PhpMyAdmin\Server\Plugins;
use PhpMyAdmin\Server\Privileges;
use PhpMyAdmin\Template;
use PhpMyAdmin\UserPassword;
use function str_repeat;
/**
* @covers \PhpMyAdmin\UserPassword
*/
class UserPasswordTest extends AbstractTestCase
{
/** @var UserPassword */
private $object;
protected function setUp(): void
{
parent::setUp();
$relation = new Relation($GLOBALS['dbi']);
$serverPrivileges = new Privileges(
new Template(),
$GLOBALS['dbi'],
$relation,
new RelationCleanup($GLOBALS['dbi'], $relation),
new Plugins($GLOBALS['dbi'])
);
$this->object = new UserPassword($serverPrivileges);
}
/**
* @dataProvider providerSetChangePasswordMsg
*/
public function testSetChangePasswordMsg(
bool $error,
Message $message,
string $noPassword,
string $password,
string $passwordConfirmation
): void {
$_POST['nopass'] = $noPassword;
$_POST['pma_pw'] = $password;
$_POST['pma_pw2'] = $passwordConfirmation;
self::assertEquals(['error' => $error, 'msg' => $message], $this->object->setChangePasswordMsg());
}
/**
* @psalm-return array{0: bool, 1: Message, 2: string, 3: string, 4: string}[]
*/
public static function providerSetChangePasswordMsg(): array
{
return [
[false, Message::success('The profile has been updated.'), '1', '', ''],
[true, Message::error('The password is empty!'), '0', '', ''],
[true, Message::error('The password is empty!'), '0', 'a', ''],
[true, Message::error('The password is empty!'), '0', '', 'a'],
[true, Message::error('The passwords aren\'t the same!'), '0', 'a', 'b'],
[true, Message::error('Password is too long!'), '0', str_repeat('a', 257), str_repeat('a', 257)],
[
false,
Message::success('The profile has been updated.'),
'0',
str_repeat('a', 256),
str_repeat('a', 256),
],
];
}
}