Source
'error' => 'Incorrect value for field "/1/passwd": must contain at least one lowercase and one uppercase Latin letter.'
<?php
/*
** Copyright (C) 2001-2025 Zabbix SIA
**
** This program is free software: you can redistribute it and/or modify it under the terms of
** the GNU Affero General Public License as published by the Free Software Foundation, version 3.
**
** 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 Affero General Public License for more details.
**
** You should have received a copy of the GNU Affero General Public License along with this program.
** If not, see <https://www.gnu.org/licenses/>.
**/
require_once dirname(__FILE__).'/../../include/CWebTest.php';
require_once dirname(__FILE__).'/../behaviors/CMessageBehavior.php';
/**
* @onBefore prepareUserData
*
* @backup config, users
*/
class testUsersPasswordComplexity extends CWebTest {
const ACTION_UPDATE = true;
const OWN_PASSWORD = true;
const ADMIN_USERID = 1;
/**
* Attach MessageBehavior to the test.
*
* @return array
*/
public function getBehaviors() {
return ['class' => CMessageBehavior::class];
}
/**
* Id of user that created for future updating.
*
* @var integer
*/
protected static $userid;
/**
* Password for user which is being changed in scenarios.
*
* @var string
*/
protected static $user_password = 'Iamrobot1!';
/**
* Password for Admin which is being changed in scenarios.
*
* @var string
*/
protected static $admin_password = 'zabbix';
/**
* Add user for updating.
*/
public function prepareUserData() {
$response = CDataHelper::call('user.create', [
[
'username' => 'update-user',
'passwd' => 'Iamrobot1!',
'autologin' => 1,
'autologout' => 0,
'roleid' => 1,
'usrgrps' => [
[
'usrgrpid' => '7'
]
]
]
]);
$this->assertArrayHasKey('userids', $response);
self::$userid = $response['userids'][0];
}
public function getFormValidationData() {
return [
[
[
'expected' => TEST_BAD,
'fields' => ['Minimum password length' => '0']
]
],