diff --git a/module/user/model.php b/module/user/model.php index 5078c6e8bd..4d6b50ec19 100644 --- a/module/user/model.php +++ b/module/user/model.php @@ -293,9 +293,9 @@ class userModel extends model * @param int $maxCount * @param int $userCount * @access public - * @return void + * @return bool */ - public function processMoreLink(string $params, string|array $usersToAppended, int $maxCount, int $userCount): void + public function processMoreLink(string $params, string|array $usersToAppended, int $maxCount, int $userCount): bool { unset($this->config->user->moreLink); if($maxCount && $maxCount == $userCount) @@ -306,6 +306,8 @@ class userModel extends model $moreLink = helper::createLink('user', 'ajaxGetMore'); $this->config->user->moreLink = $moreLink . (strpos($moreLink, '?') === false ? '?' : '&') . "params=" . base64_encode($moreLinkParams); } + + return true; } /** @@ -1200,13 +1202,14 @@ class userModel extends model * * @param object $user * @access public - * @return void + * @return bool */ - public function keepLogin(object $user): void + public function keepLogin(object $user): bool { helper::setcookie('keepLogin', 'on'); helper::setcookie('za', $user->account); helper::setcookie('zp', sha1($user->account . $user->password . $this->server->request_time)); + return true; } /** @@ -2883,15 +2886,17 @@ class userModel extends model * Set the first super admin as current user. * * @access public - * @return void + * @return bool */ - public function su() + public function su(): bool { $company = $this->dao->select('admins')->from(TABLE_COMPANY)->fetch(); $admins = explode(',', trim($company->admins, ',')); if(empty($admins[0])) helper::end('No admin users.'); $this->app->user = $this->getById($admins[0]); + + return true; } /** diff --git a/module/user/test/model/checkbeforebatchcreate.php b/module/user/test/model/checkbeforebatchcreate.php index b5755e7739..045fa8b581 100644 --- a/module/user/test/model/checkbeforebatchcreate.php +++ b/module/user/test/model/checkbeforebatchcreate.php @@ -51,6 +51,8 @@ $verifyPassword = md5(md5('123456') . $random); $userTest = new userTest(); +$config->safe = new stdclass(); +$config->safe->mode = 0; $result = $userTest->checkBeforeBatchCreateTest($users1, ''); r($result) && p('result') && e(0); // 检查未通过,返回 false。 r($result) && p('errors:account[0]') && e('『用户名』只能是字母、数字或下划线的组合三位以上。'); // 用户名不符合规则错误提示。 @@ -67,40 +69,39 @@ r($result) && p('errors:mobile[4]') && e('『手机』应当为合法的手 r($result) && p('errors:verifyPassword') && e('验证失败,请检查您的系统登录密码是否正确'); // 验证密码错误提示。 /* 未设置密码安全属性。*/ -$config->safe = new stdclass(); $result = $userTest->checkBeforeBatchCreateTest($users2, $verifyPassword); r($result) && p('result') && e(1); // 未设置密码安全属性,返回 false。 -r($result) && p('errors:password[0]') && e('``'); // 未设置密码安全属性,密码只包含数字,无错误提示。 -r($result) && p('errors:password[1]') && e('``'); // 未设置密码安全属性,密码包含大小写字母和数字,无错误提示。 -r($result) && p('errors:password[2]') && e('``'); // 未设置密码安全属性,密码包含大小写字母、数字和特殊字符,无错误提示。 +r($result) && p('errors:password[0]') && e('~~'); // 未设置密码安全属性,密码只包含数字,无错误提示。 +r($result) && p('errors:password[1]') && e('~~'); // 未设置密码安全属性,密码包含大小写字母和数字,无错误提示。 +r($result) && p('errors:password[2]') && e('~~'); // 未设置密码安全属性,密码包含大小写字母、数字和特殊字符,无错误提示。 /* 密码安全属性设为小于不检查的自定义数字。*/ $config->safe->mode = -1; $result = $userTest->checkBeforeBatchCreateTest($users2, $verifyPassword); -r($result) && p('errors:password[0]') && e('``'); // 密码安全属性设为小于不检查的自定义数字,密码只包含数字,无错误提示。 -r($result) && p('errors:password[1]') && e('``'); // 密码安全属性设为小于不检查的自定义数字,密码包含大小写字母和数字,无错误提示。 -r($result) && p('errors:password[2]') && e('``'); // 密码安全属性设为小于不检查的自定义数字,密码包含大小写字母、数字和特殊字符,无错误提示。 +r($result) && p('errors:password[0]') && e('~~'); // 密码安全属性设为小于不检查的自定义数字,密码只包含数字,无错误提示。 +r($result) && p('errors:password[1]') && e('~~'); // 密码安全属性设为小于不检查的自定义数字,密码包含大小写字母和数字,无错误提示。 +r($result) && p('errors:password[2]') && e('~~'); // 密码安全属性设为小于不检查的自定义数字,密码包含大小写字母、数字和特殊字符,无错误提示。 /* 密码安全属性设为不检查。*/ $config->safe->mode = 0; $result = $userTest->checkBeforeBatchCreateTest($users2, $verifyPassword); -r($result) && p('errors:password[0]') && e('``'); // 密码安全属性设为不检查,密码只包含数字,无错误提示。 -r($result) && p('errors:password[1]') && e('``'); // 密码安全属性设为不检查,密码包含大小写字母和数字,无错误提示。 -r($result) && p('errors:password[2]') && e('``'); // 密码安全属性设为不检查,密码包含大小写字母、数字和特殊字符,无错误提示。 +r($result) && p('errors:password[0]') && e('~~'); // 密码安全属性设为不检查,密码只包含数字,无错误提示。 +r($result) && p('errors:password[1]') && e('~~'); // 密码安全属性设为不检查,密码包含大小写字母和数字,无错误提示。 +r($result) && p('errors:password[2]') && e('~~'); // 密码安全属性设为不检查,密码包含大小写字母、数字和特殊字符,无错误提示。 /* 密码安全属性设为中。*/ $config->safe->mode = 1; $result = $userTest->checkBeforeBatchCreateTest($users2, $verifyPassword); r($result) && p('errors:password[0]') && e('密码强度小于系统设定。'); // 密码安全属性设为中,密码只包含数字,密码强度小于系统设定,有错误提示。 -r($result) && p('errors:password[1]') && e('``'); // 密码安全属性设为中,密码包含大小写字母和数字,密码强度符合系统设定,无错误提示。 -r($result) && p('errors:password[2]') && e('``'); // 密码安全属性设为中,密码包含大小写字母、数字和特殊字符,密码强度符合系统设定,无错误提示。 +r($result) && p('errors:password[1]') && e('~~'); // 密码安全属性设为中,密码包含大小写字母和数字,密码强度符合系统设定,无错误提示。 +r($result) && p('errors:password[2]') && e('~~'); // 密码安全属性设为中,密码包含大小写字母、数字和特殊字符,密码强度符合系统设定,无错误提示。 /* 密码安全属性设为强。*/ $config->safe->mode = 2; $result = $userTest->checkBeforeBatchCreateTest($users2, $verifyPassword); r($result) && p('errors:password[0]') && e('密码强度小于系统设定。'); // 密码安全属性设为强,密码只包含数字,密码强度小于系统设定,有错误提示。 r($result) && p('errors:password[1]') && e('密码强度小于系统设定。'); // 密码安全属性设为强,密码包含大小写字母和数字,密码强度小于系统设定,有错误提示。 -r($result) && p('errors:password[2]') && e('``'); // 密码安全属性设为强,密码包含大小写字母、数字和特殊字符,密码强度符合系统设定,无错误提示。 +r($result) && p('errors:password[2]') && e('~~'); // 密码安全属性设为强,密码包含大小写字母、数字和特殊字符,密码强度符合系统设定,无错误提示。 /* 密码安全属性设为大于强的自定义数字。*/ $config->safe->mode = 3; @@ -115,22 +116,22 @@ $config->safe->mode = 0; // 密码安全属性设为不检查,防止影响后 unset($config->safe->changeWeak); $result = $userTest->checkBeforeBatchCreateTest($users3, $verifyPassword); r($result) && p('result') && e(1); // 未设置修改弱口令密码属性,返回 false。 -r($result) && p('errors:password[0]') && e('``'); // 未设置修改弱口令密码属性,无错误提示。 -r($result) && p('errors:password[1]') && e('``'); // 未设置修改弱口令密码属性,无错误提示。 +r($result) && p('errors:password[0]') && e('~~'); // 未设置修改弱口令密码属性,无错误提示。 +r($result) && p('errors:password[1]') && e('~~'); // 未设置修改弱口令密码属性,无错误提示。 /* 修改弱口令密码属性设为不强制。*/ $config->safe->changeWeak = 0; $result = $userTest->checkBeforeBatchCreateTest($users3, $verifyPassword); r($result) && p('result') && e(1); // 修改弱口令密码属性设为不强制,返回 false。 -r($result) && p('errors:password[0]') && e('``'); // 修改弱口令密码属性设为不强制,无错误提示。 -r($result) && p('errors:password[1]') && e('``'); // 修改弱口令密码属性设为不强制,无错误提示。 +r($result) && p('errors:password[0]') && e('~~'); // 修改弱口令密码属性设为不强制,无错误提示。 +r($result) && p('errors:password[1]') && e('~~'); // 修改弱口令密码属性设为不强制,无错误提示。 /* 修改弱口令密码属性设为必须修改,使用系统内置常用弱口令检查。*/ $config->safe->changeWeak = 1; $result = $userTest->checkBeforeBatchCreateTest($users3, $verifyPassword); r($result) && p('result') && e(0); // 修改弱口令密码属性设为必须修改,使用系统内置常用弱口令检查,返回 false。 r($result) && p('errors:password[0]', '|') && e('密码不能使用【123456,password,12345,12345678,qwerty,123456789,1234,1234567,abc123,111111,123123】这些常用弱口令。'); // 修改弱口令密码属性设为必须修改,使用系统内置常用弱口令检查,有错误提示。 -r($result) && p('errors:password[1]') && e('``'); // 修改弱口令密码属性设为必须修改,使用系统内置常用弱口令检查,无错误提示。 +r($result) && p('errors:password[1]') && e('~~'); // 修改弱口令密码属性设为必须修改,使用系统内置常用弱口令检查,无错误提示。 /* 修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查。*/ $config->safe->changeWeak = 1; @@ -138,7 +139,7 @@ zdTable('config')->config('config')->gen(1); // 生成自定义常用弱口令 $tester->loadConfigFromDB(); // 加载自定义常用弱口令。 $result = $userTest->checkBeforeBatchCreateTest($users3, $verifyPassword); r($result) && p('result') && e(0); // 修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查,返回 false。 -r($result) && p('errors:password[0]') && e('``'); // 修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查,无错误提示。 +r($result) && p('errors:password[0]') && e('~~'); // 修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查,无错误提示。 r($result) && p('errors:password[1]', '|') && e('密码不能使用【password,12345,12345678,qwerty,123456789,1234,1234567,abc123,111111,123123,1234567890】这些常用弱口令。'); // 修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查,有错误提示。 /* 密码安全属性设为强,修改弱口令密码属性设为必须修改,符合所有检查项的用户。*/ @@ -146,11 +147,11 @@ $config->safe->mode = 2; $config->safe->changeWeak = 1; $result = $userTest->checkBeforeBatchCreateTest($users4, $verifyPassword); r($result) && p('result') && e(1); // 检查通过,返回 true。 -r($result) && p('errors:account[0]') && e('``'); // 用户名无错误提示。 -r($result) && p('errors:realname[0]') && e('``'); // 姓名无错误提示。 -r($result) && p('errors:visions[0][]') && e('``'); // 界面类型无错误提示。 -r($result) && p('errors:password[0]') && e('``'); // 密码无错误提示。 -r($result) && p('errors:email[0]') && e('``'); // 邮箱无错误提示。 -r($result) && p('errors:phone[0]') && e('``'); // 电话无错误提示。 -r($result) && p('errors:mobile[0]') && e('``'); // 手机无错误提示。 -r($result) && p('errors:verifyPassword') && e('``'); // 验证密码无错误提示。 +r($result) && p('errors:account[0]') && e('~~'); // 用户名无错误提示。 +r($result) && p('errors:realname[0]') && e('~~'); // 姓名无错误提示。 +r($result) && p('errors:visions[0][]') && e('~~'); // 界面类型无错误提示。 +r($result) && p('errors:password[0]') && e('~~'); // 密码无错误提示。 +r($result) && p('errors:email[0]') && e('~~'); // 邮箱无错误提示。 +r($result) && p('errors:phone[0]') && e('~~'); // 电话无错误提示。 +r($result) && p('errors:mobile[0]') && e('~~'); // 手机无错误提示。 +r($result) && p('errors:verifyPassword') && e('~~'); // 验证密码无错误提示。 diff --git a/module/user/test/model/checkbeforebatchupdate.php b/module/user/test/model/checkbeforebatchupdate.php index 70eac2037e..b077cdf362 100644 --- a/module/user/test/model/checkbeforebatchupdate.php +++ b/module/user/test/model/checkbeforebatchupdate.php @@ -42,27 +42,27 @@ $result = $userTest->checkBeforeBatchUpdateTest($users1, ''); r($result) && p('result') && e(0); // 检查未通过,返回 false。 r($result) && p('errors:realname[0]') && e('『姓名』不能为空。'); // 姓名为空错误提示。 r($result) && p('errors:visions[0][]') && e('『界面类型』不能为空。'); // 界面类型为空错误提示。 -r($result) && p('errors:email[0]') && e('``'); // 邮箱无错误提示。 -r($result) && p('errors:phone[0]') && e('``'); // 电话无错误提示。 -r($result) && p('errors:mobile[0]') && e('``'); // 手机无错误提示。 +r($result) && p('errors:email[0]') && e('~~'); // 邮箱无错误提示。 +r($result) && p('errors:phone[0]') && e('~~'); // 电话无错误提示。 +r($result) && p('errors:mobile[0]') && e('~~'); // 手机无错误提示。 r($result) && p('errors:verifyPassword') && e('验证失败,请检查您的系统登录密码是否正确'); // 验证密码错误提示。 /* 联系方式不符合格式的用户。*/ $result = $userTest->checkBeforeBatchUpdateTest($users2, $verifyPassword); r($result) && p('result') && e(0); // 检查未通过,返回 false。 -r($result) && p('errors:realname[0]') && e('``'); // 姓名无错误提示。 -r($result) && p('errors:visions[0][]') && e('``'); // 界面类型无错误提示。 +r($result) && p('errors:realname[0]') && e('~~'); // 姓名无错误提示。 +r($result) && p('errors:visions[0][]') && e('~~'); // 界面类型无错误提示。 r($result) && p('errors:email[0]') && e('『邮箱』应当为合法的EMAIL。'); // 邮箱格式错误提示。 r($result) && p('errors:phone[0]') && e('『电话』应当为合法的电话号码。'); // 电话格式错误提示。 r($result) && p('errors:mobile[0]') && e('『手机』应当为合法的手机号码。'); // 手机格式错误提示。 -r($result) && p('errors:verifyPassword') && e('``'); // 验证密码无错误提示。 +r($result) && p('errors:verifyPassword') && e('~~'); // 验证密码无错误提示。 /* 符合所有检查项的用户。*/ $result = $userTest->checkBeforeBatchUpdateTest($users3, $verifyPassword); r($result) && p('result') && e(1); // 检查通过,返回 true。 -r($result) && p('errors:realname[0]') && e('``'); // 姓名无错误提示。 -r($result) && p('errors:visions[0][]') && e('``'); // 界面类型无错误提示。 -r($result) && p('errors:email[0]') && e('``'); // 邮箱无错误提示。 -r($result) && p('errors:phone[0]') && e('``'); // 电话无错误提示。 -r($result) && p('errors:mobile[0]') && e('``'); // 手机无错误提示。 -r($result) && p('errors:verifyPassword') && e('``'); // 验证密码无错误提示。 +r($result) && p('errors:realname[0]') && e('~~'); // 姓名无错误提示。 +r($result) && p('errors:visions[0][]') && e('~~'); // 界面类型无错误提示。 +r($result) && p('errors:email[0]') && e('~~'); // 邮箱无错误提示。 +r($result) && p('errors:phone[0]') && e('~~'); // 电话无错误提示。 +r($result) && p('errors:mobile[0]') && e('~~'); // 手机无错误提示。 +r($result) && p('errors:verifyPassword') && e('~~'); // 验证密码无错误提示。 diff --git a/module/user/test/model/checkneedmodifypassword.php b/module/user/test/model/checkneedmodifypassword.php index c1f65d987d..e315972d3c 100644 --- a/module/user/test/model/checkneedmodifypassword.php +++ b/module/user/test/model/checkneedmodifypassword.php @@ -22,27 +22,27 @@ $config->safe->modifyPasswordFirstLogin = 0; $config->safe->changeWeak = 0; $config->safe->mode = 0; -r($userTest->checkNeedModifyPasswordTest($user1, 0)) && p('modifyPassword,modifyPasswordReason') && e('``,``'); // 首次登录修改密码功能关闭,首次登录无需修改密码。 +r($userTest->checkNeedModifyPasswordTest(clone($user1), 0)) && p('account,modifyPassword,modifyPasswordReason') && e('user1,~~,~~'); // 首次登录修改密码功能关闭,首次登录无需修改密码。 $config->safe->modifyPasswordFirstLogin = 1; -r($userTest->checkNeedModifyPasswordTest($user1, 0)) && p('modifyPassword,modifyPasswordReason') && e('1,modifyPasswordFirstLogin'); // 首次登录修改密码功能开启,首次登录需要修改密码。 -r($userTest->checkNeedModifyPasswordTest($user2, 0)) && p('modifyPassword,modifyPasswordReason') && e('``,``'); // 首次登录修改密码功能开启,非首次登录无需修改密码。 +r($userTest->checkNeedModifyPasswordTest(clone($user1), 0)) && p('modifyPassword,modifyPasswordReason') && e('1,modifyPasswordFirstLogin'); // 首次登录修改密码功能开启,首次登录需要修改密码。 +r($userTest->checkNeedModifyPasswordTest(clone($user2), 0)) && p('modifyPassword,modifyPasswordReason') && e('~~,~~'); // 首次登录修改密码功能开启,非首次登录无需修改密码。 -r($userTest->checkNeedModifyPasswordTest($user3, 0)) && p('modifyPassword,modifyPasswordReason') && e('``,``'); // 修改弱密码功能关闭,弱密码无需修改密码。 +r($userTest->checkNeedModifyPasswordTest(clone($user3), 0)) && p('modifyPassword,modifyPasswordReason') && e('~~,~~'); // 修改弱密码功能关闭,弱密码无需修改密码。 unset($config->safe->weak); // 重置弱密码设置,防止数据库中的设置影响单元测试。 $config->safe->changeWeak = 1; -r($userTest->checkNeedModifyPasswordTest($user3, 0)) && p('modifyPassword,modifyPasswordReason') && e('1,weak'); // 修改弱密码功能开启,弱密码需要修改密码。 -r($userTest->checkNeedModifyPasswordTest($user4, 0)) && p('modifyPassword,modifyPasswordReason') && e('``,``'); // 修改弱密码功能开启,强密码无需修改密码。 +r($userTest->checkNeedModifyPasswordTest(clone($user3), 0)) && p('modifyPassword,modifyPasswordReason') && e('1,weak'); // 修改弱密码功能开启,弱密码需要修改密码。 +r($userTest->checkNeedModifyPasswordTest(clone($user4), 0)) && p('modifyPassword,modifyPasswordReason') && e('~~,~~'); // 修改弱密码功能开启,强密码无需修改密码。 $config->safe->mode = 1; $app->setModuleName('index'); $app->setMethodName('index'); -r($userTest->checkNeedModifyPasswordTest($user4, 0)) && p('modifyPassword,modifyPasswordReason') && e('``,``'); // 密码强度检查功能设为 1,密码强度为 0,模块为 index,方法为 index,无需修改密码。 +r($userTest->checkNeedModifyPasswordTest(clone($user4), 0)) && p('modifyPassword,modifyPasswordReason') && e('~~,~~'); // 密码强度检查功能设为 1,密码强度为 0,模块为 index,方法为 index,无需修改密码。 $app->setModuleName('user'); -r($userTest->checkNeedModifyPasswordTest($user4, 0)) && p('modifyPassword,modifyPasswordReason') && e('``,``'); // 密码强度检查功能设为 1,密码强度为 0,模块为 user,方法为 index,无需修改密码。 +r($userTest->checkNeedModifyPasswordTest(clone($user4), 0)) && p('modifyPassword,modifyPasswordReason') && e('~~,~~'); // 密码强度检查功能设为 1,密码强度为 0,模块为 user,方法为 index,无需修改密码。 $app->setMethodName('login'); -r($userTest->checkNeedModifyPasswordTest($user4, 0)) && p('modifyPassword,modifyPasswordReason') && e('1,passwordStrengthWeak'); // 密码强度检查功能设为 1,密码强度为 0,模块为 user,方法为 login,需要修改密码。 -r($userTest->checkNeedModifyPasswordTest($user4, 1)) && p('modifyPassword,modifyPasswordReason') && e('``,``'); // 密码强度检查功能设为 1,密码强度为 1,模块为 user,方法为 login,无需修改密码。 +r($userTest->checkNeedModifyPasswordTest(clone($user4), 0)) && p('modifyPassword,modifyPasswordReason') && e('1,passwordStrengthWeak'); // 密码强度检查功能设为 1,密码强度为 0,模块为 user,方法为 login,需要修改密码。 +r($userTest->checkNeedModifyPasswordTest(clone($user4), 1)) && p('modifyPassword,modifyPasswordReason') && e('~~,~~'); // 密码强度检查功能设为 1,密码强度为 1,模块为 user,方法为 login,无需修改密码。 diff --git a/module/user/test/model/checkpassword.php b/module/user/test/model/checkpassword.php index a37f20189b..1a85b0bffc 100755 --- a/module/user/test/model/checkpassword.php +++ b/module/user/test/model/checkpassword.php @@ -33,7 +33,7 @@ r($result) && p('errors:password1') && e('『密码』不能为空。'); // 密 /* 密码为空,允许密码为空。*/ $result = $userTest->checkPasswordTest($user1, true); r($result) && p('result') && e(1); // 密码为空,允许密码为空,返回 true。 -r($result) && p('errors:password1') && e('``'); // 密码为空,允许密码为空,无错误提示。 +r($result) && p('errors:password1') && e('~~'); // 密码为空,允许密码为空,无错误提示。 $config->safe = new stdclass(); @@ -82,14 +82,14 @@ $config->safe->mode = 0; unset($config->safe->changeWeak); $result = $userTest->checkPasswordTest($user4); r($result) && p('result') && e(1); // 密码不为空,两次密码相同,未设置修改弱口令密码属性,返回 true。 -r($result) && p('errors:password1') && e('``'); // 密码不为空,两次密码相同,未设置修改弱口令密码属性,无错误提示。 +r($result) && p('errors:password1') && e('~~'); // 密码不为空,两次密码相同,未设置修改弱口令密码属性,无错误提示。 /* 密码不为空,两次密码相同,修改弱口令密码属性设置为不强制。*/ $config->safe->mode = 0; $config->safe->changeWeak = 0; $result = $userTest->checkPasswordTest($user4); r($result) && p('result') && e(1); // 密码不为空,两次密码相同,修改弱口令密码属性设为不强制,返回 true。 -r($result) && p('errors:password1') && e('``'); // 密码不为空,两次密码相同,修改弱口令密码属性设为不强制,无错误提示。 +r($result) && p('errors:password1') && e('~~'); // 密码不为空,两次密码相同,修改弱口令密码属性设为不强制,无错误提示。 /* 密码不为空,两次密码相同,密码为明文,修改弱口令密码属性设为必须修改,使用系统内置常用弱口令检查。*/ $config->safe->mode = 0; @@ -99,7 +99,7 @@ r($result) && p('result') && e(0); r($result) && p('errors:password1', '|') && e('密码不能使用【123456,password,12345,12345678,qwerty,123456789,1234,1234567,abc123,111111,123123】这些常用弱口令。'); // 密码不为空,两次密码相同,密码为明文,修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查,有错误提示。 $result = $userTest->checkPasswordTest($user5); r($result) && p('result') && e(1); // 密码不为空,两次密码相同,密码为明文,修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查,返回 true。 -r($result) && p('errors:password1', '|') && e('``'); // 密码不为空,两次密码相同,密码为明文,修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查,无错误提示。 +r($result) && p('errors:password1', '|') && e('~~'); // 密码不为空,两次密码相同,密码为明文,修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查,无错误提示。 /* 密码不为空,两次密码相同,密码为 md5 加密,修改弱口令密码属性设为必须修改,使用系统内置常用弱口令检查。*/ $config->safe->mode = 0; @@ -109,7 +109,7 @@ r($result) && p('result') && e(0); r($result) && p('errors:password1', '|') && e('密码不能使用【123456,password,12345,12345678,qwerty,123456789,1234,1234567,abc123,111111,123123】这些常用弱口令。'); // 密码不为空,两次密码相同,密码为 md5 加密,修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查,有错误提示。 $result = $userTest->checkPasswordTest($user7); r($result) && p('result') && e(1); // 密码不为空,两次密码相同,密码为 md5 加密,修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查,返回 true。 -r($result) && p('errors:password1', '|') && e('``'); // 密码不为空,两次密码相同,密码为 md5 加密,修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查,无错误提示。 +r($result) && p('errors:password1', '|') && e('~~'); // 密码不为空,两次密码相同,密码为 md5 加密,修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查,无错误提示。 zdTable('config')->config('config')->gen(1); // 生成自定义常用弱口令。 $tester->loadConfigFromDB(); // 加载自定义常用弱口令。 @@ -119,7 +119,7 @@ $config->safe->mode = 0; $config->safe->changeWeak = 1; $result = $userTest->checkPasswordTest($user4); r($result) && p('result') && e(1); // 密码不为空,两次密码相同,密码为明文,修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查,返回 true。 -r($result) && p('errors:password1', '|') && e('``'); // 密码不为空,两次密码相同,密码为明文,修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查,无错误提示。 +r($result) && p('errors:password1', '|') && e('~~'); // 密码不为空,两次密码相同,密码为明文,修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查,无错误提示。 $result = $userTest->checkPasswordTest($user5); r($result) && p('result') && e(0); // 密码不为空,两次密码相同,密码为明文,修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查,返回 false。 r($result) && p('errors:password1', '|') && e('密码不能使用【password,12345,12345678,qwerty,123456789,1234,1234567,abc123,111111,123123,1234567890】这些常用弱口令。'); // 密码不为空,两次密码相同,密码为明文,修改弱口令密码属性设为必须修改,使用自定义常用弱口令检查,有错误提示。 @@ -129,7 +129,7 @@ $config->safe->mode = 0; $config->safe->changeWeak = 1; $result = $userTest->checkPasswordTest($user6); r($result) && p('result') && e(1); // 密码不为空,两次密码相同,密码为 md5 加密,修改弱口令密码属性设为必须修改,使用系统内置常用弱口令检查,返回 true。 -r($result) && p('errors:password1', '|') && e('``'); // 密码不为空,两次密码相同,密码为 md5 加密,修改弱口令密码属性设为必须修改,使用系统内置常用弱口令检查,无错误提示。 +r($result) && p('errors:password1', '|') && e('~~'); // 密码不为空,两次密码相同,密码为 md5 加密,修改弱口令密码属性设为必须修改,使用系统内置常用弱口令检查,无错误提示。 $result = $userTest->checkPasswordTest($user7); r($result) && p('result') && e(0); // 密码不为空,两次密码相同,密码为 md5 加密,修改弱口令密码属性设为必须修改,使用系统内置常用弱口令检查,返回 false。 r($result) && p('errors:password1', '|') && e('密码不能使用【password,12345,12345678,qwerty,123456789,1234,1234567,abc123,111111,123123,1234567890】这些常用弱口令。'); // 密码不为空,两次密码相同,密码为 md5 加密,修改弱口令密码属性设为必须修改,使用系统内置常用弱口令检查,有错误提示。 diff --git a/module/user/test/model/checkverifypassword.php b/module/user/test/model/checkverifypassword.php index 2a2ab9c5c0..5ebebafe7a 100644 --- a/module/user/test/model/checkverifypassword.php +++ b/module/user/test/model/checkverifypassword.php @@ -46,4 +46,4 @@ r($result7) && p('errors:verifyPassword') && e('验证失败,请检查您的 $result8 = $userTest->checkVerifyPasswordTest(md5(md5('123456') . $random)); r($result8) && p('result') && e(1); // 验证密码包含正确的密码和正确的随机数返回 true。 -r($result8) && p('errors:verifyPassword') && e('``'); // 验证密码包含正确的密码和正确的随机数提示信息。 +r($result8) && p('errors:verifyPassword') && e('~~'); // 验证密码包含正确的密码和正确的随机数提示信息。 diff --git a/module/user/test/model/cleanlocked.php b/module/user/test/model/cleanlocked.php index 851e1d4bc2..f1a570d939 100755 --- a/module/user/test/model/cleanlocked.php +++ b/module/user/test/model/cleanlocked.php @@ -27,8 +27,8 @@ $userTest->cleanLockedTest('admin'); // 清除 admin 用户的失败次数和锁 $userTest->cleanLockedTest('user1'); // 清除 user1 用户的失败次数和锁定时间。 $users = $userTest->getListTest(); -r($users) && p('0:account,fails,locked') && e('admin,0,``'); // admin 用户的失败次数为 0,锁定时间为空。 -r($users) && p('1:account,fails,locked') && e('user1,0,``'); // user1 用户的失败次数为 0,锁定时间为空。 +r($users) && p('0:account,fails,locked') && e('admin,0,~~'); // admin 用户的失败次数为 0,锁定时间为空。 +r($users) && p('1:account,fails,locked') && e('user1,0,~~'); // user1 用户的失败次数为 0,锁定时间为空。 r(isset($_SESSION['loginFails'])) && p() && e(0); // session 中记录的失败次数为空。 r(isset($_SESSION['admin.loginLocked'])) && p() && e(0); // session 中记录的 admin 用户锁定时间为空。 diff --git a/module/user/test/model/create.php b/module/user/test/model/create.php index 8a55ea7a39..cf7a43d748 100755 --- a/module/user/test/model/create.php +++ b/module/user/test/model/create.php @@ -96,7 +96,7 @@ r($result) && p('errors:newCompany') && e('『所属公司』不能为空。'); $user6->newCompany = 'newCompany'; $result = $userTest->createTest($user6); r($result) && p('result') && e(2); // 创建外部公司,公司名称不为空,返回创建的用户 id。 -r($result) && p('errors:newCompany') && e('``'); // 创建外部公司,公司名称不为空,没有错误信息。 +r($result) && p('errors:newCompany') && e('~~'); // 创建外部公司,公司名称不为空,没有错误信息。 /* 检测必填项。*/ $user7 = clone $template; @@ -162,7 +162,7 @@ $users13->account = 'user2'; $users13->group = array(0, 1, 2); $result = $userTest->createTest($users13); r($result) && p('result') && e(3); // 创建用户成功,返回创建的用户 id。 -r($result) && p('errors:account') && e('``'); // 创建用户成功,没有错误信息。 +r($result) && p('errors:account') && e('~~'); // 创建用户成功,没有错误信息。 $groups = $tester->dao->select('*')->from(TABLE_USERGROUP)->fetchAll(); r(count($groups)) && p() && e(2); // 生成用户权限组成功,返回 2 条记录。 diff --git a/module/user/test/model/createcontactlist.php b/module/user/test/model/createcontactlist.php index c65ca2132b..4259ca7579 100755 --- a/module/user/test/model/createcontactlist.php +++ b/module/user/test/model/createcontactlist.php @@ -26,31 +26,31 @@ $contact4 = (object)array('account' => 'user1', 'listName' => '联系人列表2' /* 测试必填项为空的情况。*/ $result = $userTest->createContactListTest($contact1); r($result) && p('result') && e(0); // 列表名称和用户列表为空,返回 false。 -r($result) && p('errors:account') && e('``'); // 创建人无错误提示。 +r($result) && p('errors:account') && e('~~'); // 创建人无错误提示。 r($result) && p('errors:listName') && e('『列表名称』不能为空。'); // 列表名称不能为空。 r($result) && p('errors:userList') && e('『用户列表』不能为空。'); // 用户列表不能为空。 -r($result) && p('errors:public') && e('``'); // 公共联系人无错误提示。 +r($result) && p('errors:public') && e('~~'); // 公共联系人无错误提示。 /* 测试列表名称已存在的情况。*/ $result = $userTest->createContactListTest($contact2); r($result) && p('result') && e(0); // 列表名称已存在,返回 false。 -r($result) && p('errors:account') && e('``'); // 创建人无错误提示。 +r($result) && p('errors:account') && e('~~'); // 创建人无错误提示。 r($result) && p('errors:listName') && e('『列表名称』已经有『联系人列表1』这条记录了。如果您确定该记录已删除,请到后台-系统设置-回收站还原。'); // 列表名称已存在。 -r($result) && p('errors:userList') && e('``'); // 用户列表无错误提示。 -r($result) && p('errors:public') && e('``'); // 公共联系人无错误提示。 +r($result) && p('errors:userList') && e('~~'); // 用户列表无错误提示。 +r($result) && p('errors:public') && e('~~'); // 公共联系人无错误提示。 /* 测试数据格式不符合数据库字段设置的情况。*/ $result = $userTest->createContactListTest($contact3); r($result) && p('result') && e(0); // 创建人和列表名称过长,返回 false。 r($result) && p('errors:account') && e('『创建人』长度应当不超过『30』,且大于『0』。'); // 创建人过长。 r($result) && p('errors:listName') && e('『列表名称』长度应当不超过『60』,且大于『0』。'); // 列表名称过长。 -r($result) && p('errors:userList') && e('``'); // 用户列表无错误提示。 +r($result) && p('errors:userList') && e('~~'); // 用户列表无错误提示。 r($result) && p('errors:public') && e('『公共联系人』应当是数字。'); // 公共联系人应当是数字。 /* 测试创建成功的情况。*/ $result = $userTest->createContactListTest($contact4); r($result) && p('result') && e(1); // 创建成功,返回 true。 -r($result) && p('errors:account') && e('``'); // 创建人无错误提示。 -r($result) && p('errors:listName') && e('``'); // 列表名称无错误提示。 -r($result) && p('errors:userList') && e('``'); // 用户列表无错误提示。 -r($result) && p('errors:public') && e('``'); // 公共联系人无错误提示。 +r($result) && p('errors:account') && e('~~'); // 创建人无错误提示。 +r($result) && p('errors:listName') && e('~~'); // 列表名称无错误提示。 +r($result) && p('errors:userList') && e('~~'); // 用户列表无错误提示。 +r($result) && p('errors:public') && e('~~'); // 公共联系人无错误提示。 diff --git a/module/user/test/model/failplus.php b/module/user/test/model/failplus.php index e5085fe0c8..e3a96bee7b 100755 --- a/module/user/test/model/failplus.php +++ b/module/user/test/model/failplus.php @@ -40,14 +40,14 @@ r($userModel->failPlus($account3)) && p() && e(1); // 用户名合 r($_SESSION['loginFails']) && p() && e(2); // 用户名合法且存在时,session 中失败次数为 2 。 r(isset($_SESSION["{$account3}.loginLocked"])) && p() && e(0); // 用户名合法且存在时,session 中失败次数未达到最大失败次数限制,session 中该账号锁定时间为空 。 $user = $userModel->dao->select('fails, locked')->from(TABLE_USER)->where('account')->eq($account3)->fetch(); -r($user) && p('fails, locked') && e('1,``'); // 用户名合法且存在时,$account3 账号未达到最大失败次数限制,数据库中失败次数为 1 ,账号未锁定。 +r($user) && p('fails, locked') && e('1,~~'); // 用户名合法且存在时,$account3 账号未达到最大失败次数限制,数据库中失败次数为 1 ,账号未锁定。 /* 第二次测试用户名合法且存在的情况,未达到最大失败次数限制。*/ r($userModel->failPlus($account3)) && p() && e(2); // 用户名合法且存在时,第二次失败返回 2 。 r($_SESSION['loginFails']) && p() && e(3); // 用户名合法且存在时,session 中失败次数为 3 。 r($_SESSION["{$account3}.loginLocked"] == date('Y-m-d H:i:s')) && p() && e(1); // 用户名合法且存在时,session 中失败次数达到最大失败次数限制,session 中该账号锁定时间为当前时间 。 $user = $userModel->dao->select('fails, locked')->from(TABLE_USER)->where('account')->eq($account3)->fetch(); -r($user) && p('fails, locked') && e('2,``'); // 用户名合法且存在时,$account3 账号未达到最大失败次数限制,数据库中失败次数为 2 ,账号未锁定。 +r($user) && p('fails, locked') && e('2,~~'); // 用户名合法且存在时,$account3 账号未达到最大失败次数限制,数据库中失败次数为 2 ,账号未锁定。 /* 第三次测试用户名合法且存在的情况,达到最大失败次数限制。*/ r($userModel->failPlus($account3)) && p() && e(3); // 用户名合法且存在时,第三次失败返回 3 。 diff --git a/module/user/test/model/fetchextrausers.php b/module/user/test/model/fetchextrausers.php index 257b99567e..4f42656c76 100644 --- a/module/user/test/model/fetchextrausers.php +++ b/module/user/test/model/fetchextrausers.php @@ -29,10 +29,10 @@ $users = $userTest->fetchExtraUsersTest(array('admin', 'user1'), 'id, account', r(count($users)) && p() && e(2); // usersToAppended 参数为数组,包含 2 个用户,指定查找 id 和 account 字段,返回 2 个用户。 r($users) && p('0:id') && e(1); // 返回的第 1 个用户的 id 字段值为 1。 r($users) && p('0:account') && e('admin'); // 返回的第 1 个用户的 account 字段值为 admin。 -r($users) && p('0:realname') && e('``'); // 返回的第 1 个用户没有 realname 字段。 +r($users) && p('0:realname') && e('~~'); // 返回的第 1 个用户没有 realname 字段。 r($users) && p('1:id') && e(2); // 返回的第 2 个用户的 id 字段值为 2。 r($users) && p('1:account') && e('user1'); // 返回的第 2 个用户的 account 字段值为 user1。 -r($users) && p('0:realname') && e('``'); // 返回的第 2 个用户没有 realname 字段。 +r($users) && p('0:realname') && e('~~'); // 返回的第 2 个用户没有 realname 字段。 $users = $userTest->fetchExtraUsersTest(array('admin', 'user1'), 'id, account', 'id'); r(count($users)) && p() && e(2); // usersToAppended 参数为数组,包含 2 个用户,指定查找 id 和 account 字段,指定以 id 字段为键,返回 2 个用户。 diff --git a/module/user/test/model/getcancreatestoryusers.php b/module/user/test/model/getcancreatestoryusers.php index 606cbfbee7..5a023299dc 100755 --- a/module/user/test/model/getcancreatestoryusers.php +++ b/module/user/test/model/getcancreatestoryusers.php @@ -12,7 +12,7 @@ zdTable('company')->gen(1); $userTable = zdTable('user'); $userTable->account->range('admin,user1,user2,user3,user4,user5,user6,user7,user8,user9'); -$userTable->realname->range('admin,user1,user2,user3,user4,user5,user6,user7,``{2}'); +$userTable->realname->range('admin,user1,user2,user3,user4,user5,user6,user7,~~{2}'); $userTable->deleted->range('0{9},1'); $userTable->gen(10); @@ -33,11 +33,11 @@ $users = $userTest->getCanCreateStoryUsersTest(); r(count($users)) && p() && e(4); // 有创建需求权限的用户数为 4。 r($users) && p('admin') && e('A:admin'); // admin 用户是超级管理员,有创建需求权限。 r($users) && p('user1') && e('U:user1'); // user1 用户在权限组 1 中,有创建需求权限。 -r($users) && p('user2') && e('``'); // user2 用户在权限组 2 和 3 中,没有创建需求权限。 -r($users) && p('user3') && e('``'); // user3 用户在权限组 3 中,没有创建需求权限。 +r($users) && p('user2') && e('~~'); // user2 用户在权限组 2 和 3 中,没有创建需求权限。 +r($users) && p('user3') && e('~~'); // user3 用户在权限组 3 中,没有创建需求权限。 r($users) && p('user4') && e('U:user4'); // user4 用户在权限组 3 和 4 中,有创建需求权限。 r($users) && p('user5') && e('U:user5'); // user5 用户在权限组 5 中,有创建需求权限。 -r($users) && p('user6') && e('``'); // user6 用户在权限组 6 中,没有创建需求权限。 -r($users) && p('user7') && e('``'); // user7 用户不在权限组中,没有创建需求权限。 -r($users) && p('user8') && e('``'); // user8 用户真实姓名为空,没有创建需求权限。 -r($users) && p('user9') && e('``'); // user9 用户被删除,没有创建需求权限。 +r($users) && p('user6') && e('~~'); // user6 用户在权限组 6 中,没有创建需求权限。 +r($users) && p('user7') && e('~~'); // user7 用户不在权限组中,没有创建需求权限。 +r($users) && p('user8') && e('~~'); // user8 用户真实姓名为空,没有创建需求权限。 +r($users) && p('user9') && e('~~'); // user9 用户被删除,没有创建需求权限。 diff --git a/module/user/test/model/getexecutions.php b/module/user/test/model/getexecutions.php index 5b51680aa1..a01f528c46 100644 --- a/module/user/test/model/getexecutions.php +++ b/module/user/test/model/getexecutions.php @@ -61,8 +61,8 @@ $config->vision = 'rnd'; $executions = $userTest->getExecutionsTest('admin'); r(count($executions)) && p() && e(5); // 研发综合界面下 admin 用户参与的执行有 5 个。 -r($executions) && p('6:status,delay,projectName,assignedToMeTasks') && e('wait,``,项目1,3'); // 执行 6 的状态为 wait,没有延期,项目名称为项目 1,指派给 admin 的任务数是 3。 +r($executions) && p('6:status,delay,projectName,assignedToMeTasks') && e('wait,~~,项目1,3'); // 执行 6 的状态为 wait,没有延期,项目名称为项目 1,指派给 admin 的任务数是 3。 r($executions) && p('7:status,delay,projectName,assignedToMeTasks') && e('wait,1,项目2,2'); // 执行 7 的状态为 wait,延期 1 天,项目名称为项目 2,指派给 admin 的任务数是 2。 r($executions) && p('8:status,delay,projectName,assignedToMeTasks') && e('doing,1,项目2,1'); // 执行 8 的状态为 doing,延期 1 天,项目名称为项目 2,指派给 admin 的任务数是 1。 -r($executions) && p('9:status,delay,projectName,assignedToMeTasks') && e('suspended,``,项目2,1'); // 执行 9 的状态为 suspended,没有延期,项目名称为项目 2,指派给 admin 的任务数是 1。 -r($executions) && p('10:status,delay,projectName,assignedToMeTasks') && e('closed,``,项目3,1'); // 执行 10 的状态为 closed,没有延期,项目名称为项目 3,指派给 admin 的任务数是 1。 +r($executions) && p('9:status,delay,projectName,assignedToMeTasks') && e('suspended,~~,项目2,1'); // 执行 9 的状态为 suspended,没有延期,项目名称为项目 2,指派给 admin 的任务数是 1。 +r($executions) && p('10:status,delay,projectName,assignedToMeTasks') && e('closed,~~,项目3,1'); // 执行 10 的状态为 closed,没有延期,项目名称为项目 3,指派给 admin 的任务数是 1。 diff --git a/module/user/test/model/getlistbyaccounts.php b/module/user/test/model/getlistbyaccounts.php index 266106cc57..42944347cd 100755 --- a/module/user/test/model/getlistbyaccounts.php +++ b/module/user/test/model/getlistbyaccounts.php @@ -31,18 +31,18 @@ $users = $userTest->getListByAccountsTest($accounts); r(count($users)) && p() && e(5); // 传入参数为非空数组,包含 5 个账号,返回数组包含 5 个用户。 r($users) && p('1001:id,account') && e('1001,user1'); // 传入参数为非空数组,包含 5 个账号,返回数组键为 1001 的用户 id 是 1001,账号是 user1。 r($users) && p('1005:id,account') && e('1005,user5'); // 传入参数为非空数组,包含 5 个账号,返回数组键为 1005 的用户 id 是 1005,账号是 user5。 -r($users) && p('user1') && e('``'); +r($users) && p('user1') && e('~~'); /* $keyField 参数设为 id 后查询。*/ $users = $userTest->getListByAccountsTest($accounts, 'id'); r(count($users)) && p() && e(5); // 传入参数为非空数组,包含 5 个账号,返回数组包含 5 个用户。 r($users) && p('1001:id,account') && e('1001,user1'); // 传入参数为非空数组,包含 5 个账号,返回数组键为 1001 的用户 id 是 1001,账号是 user1。 r($users) && p('1005:id,account') && e('1005,user5'); // 传入参数为非空数组,包含 5 个账号,返回数组键为 1005 的用户 id 是 1005,账号是 user5。 -r($users) && p('user1') && e('``'); +r($users) && p('user1') && e('~~'); /* $keyField 参数设为 account 后查询。*/ $users = $userTest->getListByAccountsTest($accounts, 'account'); r(count($users)) && p() && e(5); // 传入参数为非空数组,包含 5 个账号,返回数组包含 5 个用户。 r($users) && p('user1:id,account') && e('1001,user1'); // 传入参数为非空数组,包含 5 个账号,返回数组键为 1001 的用户 id 是 1001,账号是 user1。 r($users) && p('user5:id,account') && e('1005,user5'); // 传入参数为非空数组,包含 5 个账号,返回数组键为 1005 的用户 id 是 1005,账号是 user5。 -r($users) && p('1001') && e('``'); +r($users) && p('1001') && e('~~'); diff --git a/module/user/test/model/getprojects.php b/module/user/test/model/getprojects.php index b00c2886e6..c519875d10 100644 --- a/module/user/test/model/getprojects.php +++ b/module/user/test/model/getprojects.php @@ -53,11 +53,11 @@ $config->vision = 'rnd'; $projects = $userTest->getProjectsTest('admin'); r(count($projects)) && p() && e(5); // 研发综合界面下 admin 用户参与的项目有 5 个。 -r($projects) && p('1:status,delay,storyCount,executionCount') && e('wait,``,118,5'); // 项目 1 的状态为 wait,没有延期,需求规模总和为 118,执行数为 5。 +r($projects) && p('1:status,delay,storyCount,executionCount') && e('wait,~~,118,5'); // 项目 1 的状态为 wait,没有延期,需求规模总和为 118,执行数为 5。 r($projects) && p('2:status,delay,storyCount,executionCount') && e('wait,1,122,5'); // 项目 2 的状态为 wait,延期 1 天,需求规模总和为 122,执行数为 5。 r($projects) && p('3:status,delay,storyCount,executionCount') && e('doing,1,126,5'); // 项目 3 的状态为 doing,延期 1 天,需求规模总和为 126,执行数为 5。 -r($projects) && p('4:status,delay,storyCount,executionCount') && e('suspended,``,130,5'); // 项目 4 的状态为 suspended,没有延期,需求规模总和为 130,执行数为 5。 -r($projects) && p('5:status,delay,storyCount,executionCount') && e('closed,``,0,0'); // 项目 5 的状态为 closed,没有延期,需求规模总和为 0,执行数为 0。 +r($projects) && p('4:status,delay,storyCount,executionCount') && e('suspended,~~,130,5'); // 项目 4 的状态为 suspended,没有延期,需求规模总和为 130,执行数为 5。 +r($projects) && p('5:status,delay,storyCount,executionCount') && e('closed,~~,0,0'); // 项目 5 的状态为 closed,没有延期,需求规模总和为 0,执行数为 0。 $config->vision = 'lite'; $projects = $userTest->getProjectsTest('admin'); diff --git a/module/user/test/model/getuserroles.php b/module/user/test/model/getuserroles.php index 9427378977..a06de49bde 100755 --- a/module/user/test/model/getuserroles.php +++ b/module/user/test/model/getuserroles.php @@ -34,7 +34,7 @@ r($users) && p('user6') && e('测试主管'); // user6 账号的角色 r($users) && p('user7') && e('高层管理'); // user7 账号的角色是 高层管理。 r($users) && p('user8') && e('其他'); // user8 账号的角色是 其他。 r($users) && p('user9') && e('role'); // user9 账号的角色是 role。 -r($users) && p('user10') && e('``'); // user10 账号不存在。 +r($users) && p('user10') && e('~~'); // user10 账号不存在。 /* 参数为数组。*/ $users = $userTest->getUserRolesTest(array('admin', 'user1', 'user2', 'user3', 'user4', 'user5', 'user6', 'user7', 'user8', 'user9')); @@ -49,7 +49,7 @@ r($users) && p('user6') && e('测试主管'); // user6 账号的角色 r($users) && p('user7') && e('高层管理'); // user7 账号的角色是 高层管理。 r($users) && p('user8') && e('其他'); // user8 账号的角色是 其他。 r($users) && p('user9') && e('role'); // user9 账号的角色是 role。 -r($users) && p('user10') && e('``'); // user10 账号不存在。 +r($users) && p('user10') && e('~~'); // user10 账号不存在。 /* 参数为字符串。*/ $users = $userTest->getUserRolesTest('admin, user1, user10'); diff --git a/module/user/test/model/login.php b/module/user/test/model/login.php index 72f0498d46..0ba82cb868 100755 --- a/module/user/test/model/login.php +++ b/module/user/test/model/login.php @@ -53,7 +53,7 @@ r($tester->session->user) && p('account,admin') && e('admin,1'); // 登录成功 /* 检测 admin 用户锁定状态。*/ $user2 = $userTest->getByIdTest($user2->account); -r($user2) && p('account,fails,locked') && e('admin,0,``'); // 数据库中记录的 admin 用户登录失败次数为 0,锁定时间为空。 +r($user2) && p('account,fails,locked') && e('admin,0,~~'); // 数据库中记录的 admin 用户登录失败次数为 0,锁定时间为空。 r($tester->session->loginFails) && p() && e(0); // session 中未记录登录失败次数。 r($tester->session->{'admin.loginLocked'}) && p() && e(0); // session 中未记录 admin 用户锁定时间。 @@ -87,13 +87,13 @@ r($tester->cookie->zp) && p() && e('0'); // 未勾选保持登录状态 * 检测 user1 用户登录后的信息。 */ $result = $userTest->loginTest($user3, false, true); // 不记录日志,勾选保持登录状态。 -r($result) && p('account,admin') && e('user1,``'); // 登录成功,返回的用户是 user1,不是超级管理员。 -r($app->user) && p('account,admin') && e('user1,``'); // 登录成功,$app 对象的中的用户是 user1,不是超级管理员。 -r($tester->session->user) && p('account,admin') && e('user1,``'); // 登录成功,session 中的用户是 user1,不是超级管理员。 +r($result) && p('account,admin') && e('user1,~~'); // 登录成功,返回的用户是 user1,不是超级管理员。 +r($app->user) && p('account,admin') && e('user1,~~'); // 登录成功,$app 对象的中的用户是 user1,不是超级管理员。 +r($tester->session->user) && p('account,admin') && e('user1,~~'); // 登录成功,session 中的用户是 user1,不是超级管理员。 /* 检测 user1 用户锁定状态。*/ $user3 = $userTest->getByIdTest($user3->account); -r($user3) && p('account,fails,locked') && e('user1,0,``'); // 数据中记录的 user1 用户登录失败次数为 0,锁定时间为空。 +r($user3) && p('account,fails,locked') && e('user1,0,~~'); // 数据中记录的 user1 用户登录失败次数为 0,锁定时间为空。 r($tester->session->loginFails) && p() && e(0); // session 中未记录登录失败次数。 r($tester->session->{'user1.loginLocked'}) && p() && e(0); // session 中未记录 user1 用户锁定时间。 diff --git a/module/user/test/model/processmorelink.php b/module/user/test/model/processmorelink.php index 2d6a61afb8..5ff93b0c2f 100644 --- a/module/user/test/model/processmorelink.php +++ b/module/user/test/model/processmorelink.php @@ -16,13 +16,13 @@ $usersToAppend = array('user1', 'user2', 'user3'); $userModel = $tester->loadModel('user'); $userModel->processMoreLink($params, $usersToAppend, 0, 0); -r($config->user) && p('moreLink') && e('``'); // maxCount 参数为 0,更多链接为空。 +r($config->user) && p('batchCreate,moreLink') && e('10,~~'); // maxCount 参数为 0,更多链接为空。 $userModel->processMoreLink($params, $usersToAppend, 1, 2); -r($config->user) && p('moreLink') && e('``'); // maxCount 参数不为 0 且小于 userCount 参数,更多链接为空。 +r($config->user) && p('moreLink') && e('~~'); // maxCount 参数不为 0 且小于 userCount 参数,更多链接为空。 $userModel->processMoreLink($params, $usersToAppend, 2, 1); -r($config->user) && p('moreLink') && e('``'); // maxCount 参数不为 0 且大于 userCount 参数,更多链接为空。 +r($config->user) && p('moreLink') && e('~~'); // maxCount 参数不为 0 且大于 userCount 参数,更多链接为空。 $config->webRoot = '/'; $config->requestType = 'GET'; diff --git a/module/user/test/model/resetpassword.php b/module/user/test/model/resetpassword.php index 9966277919..a8be005df0 100755 --- a/module/user/test/model/resetpassword.php +++ b/module/user/test/model/resetpassword.php @@ -43,8 +43,8 @@ r($result) && p('errors:password1') && e('两次密码应该相同。'); // admi $result = $userTest->resetPasswordTest($user5); r($result) && p('result') && e(1); // user1 用户存在,且密码符合要求,返回 true。 -r($result) && p('errors:0') && e('``'); // user1 用户存在,且密码符合要求,不提示错误信息。 -r($result) && p('errors:password1') && e('``'); // user1 用户存在,且密码符合要求,不提示错误信息。 +r($result) && p('errors:0') && e('~~'); // user1 用户存在,且密码符合要求,不提示错误信息。 +r($result) && p('errors:password1') && e('~~'); // user1 用户存在,且密码符合要求,不提示错误信息。 $resetUser = $userTest->getByIdTest($user5->account); r($resetUser->password == $password) && p() && e(1); // user1 用户密码重置成功。 diff --git a/module/user/test/model/saveusertemplate.php b/module/user/test/model/saveusertemplate.php index 320a7ef34b..3396a9f716 100755 --- a/module/user/test/model/saveusertemplate.php +++ b/module/user/test/model/saveusertemplate.php @@ -29,20 +29,20 @@ $template4 = (object)array('account' => 'admin', 'type' => 'story', 'title' => ' /* 测试必填项为空的情况。*/ $result = $userTest->saveUserTemplateTest($template1); r($result) && p('result') && e(0); // 模板名称和模板内容为空,返回 false。 -r($result) && p('errors:account') && e('``'); // 创建人无错误提示。 -r($result) && p('errors:type') && e('``'); // 模板类型无错误提示。 +r($result) && p('errors:account') && e('~~'); // 创建人无错误提示。 +r($result) && p('errors:type') && e('~~'); // 模板类型无错误提示。 r($result) && p('errors:title') && e('『模板名称』不能为空。'); // 模板名称不能为空。 r($result) && p('errors:content') && e('『模板内容』不能为空。'); // 模板内容不能为空。 -r($result) && p('errors:public') && e('``'); // 公共模板无错误提示。 +r($result) && p('errors:public') && e('~~'); // 公共模板无错误提示。 /* 测试模板名称已存在的情况。*/ $result = $userTest->saveUserTemplateTest($template2); r($result) && p('result') && e(0); // 模板名称已存在,返回 false。 -r($result) && p('errors:account') && e('``'); // 创建人无错误提示。 -r($result) && p('errors:type') && e('``'); // 创建人无错误提示。 +r($result) && p('errors:account') && e('~~'); // 创建人无错误提示。 +r($result) && p('errors:type') && e('~~'); // 创建人无错误提示。 r($result) && p('errors:title') && e('『模板名称』已经有『模板名称1』这条记录了。如果您确定该记录已删除,请到后台-系统设置-回收站还原。'); // 模板名称已存在。 -r($result) && p('errors:content') && e('``'); // 模板内容无错误提示。 -r($result) && p('errors:public') && e('``'); // 公共模板无错误提示。 +r($result) && p('errors:content') && e('~~'); // 模板内容无错误提示。 +r($result) && p('errors:public') && e('~~'); // 公共模板无错误提示。 /* 测试数据格式不符合数据库字段设置的情况。*/ $result = $userTest->saveUserTemplateTest($template3); @@ -50,14 +50,14 @@ r($result) && p('result') && e(0); r($result) && p('errors:account') && e('『创建人』长度应当不超过『30』,且大于『0』。'); // 创建人过长。 r($result) && p('errors:type') && e('『模板类型』长度应当不超过『30』,且大于『0』。'); // 模板类型过长。 r($result) && p('errors:title') && e('『模板名称』长度应当不超过『150』,且大于『0』。'); // 模板名称过长。 -r($result) && p('errors:content') && e('``'); // 模板内容无错误提示。 +r($result) && p('errors:content') && e('~~'); // 模板内容无错误提示。 r($result) && p('errors:public') && e('『公共模板』不符合格式,应当为:『/0|1/』。'); // 公共模板应当是数字。 /* 测试创建成功的情况。*/ $result = $userTest->saveUserTemplateTest($template4); r($result) && p('result') && e(1); // 创建成功,返回 true。 -r($result) && p('errors:account') && e('``'); // 创建人无错误提示。 -r($result) && p('errors:type') && e('``'); // 模板类型无错误提示。 -r($result) && p('errors:title') && e('``'); // 模板名称无错误提示。 -r($result) && p('errors:content') && e('``'); // 模板内容无错误提示。 -r($result) && p('errors:public') && e('``'); // 公共模板无错误提示。 +r($result) && p('errors:account') && e('~~'); // 创建人无错误提示。 +r($result) && p('errors:type') && e('~~'); // 模板类型无错误提示。 +r($result) && p('errors:title') && e('~~'); // 模板名称无错误提示。 +r($result) && p('errors:content') && e('~~'); // 模板内容无错误提示。 +r($result) && p('errors:public') && e('~~'); // 公共模板无错误提示。 diff --git a/module/user/test/model/updatecontactlist.php b/module/user/test/model/updatecontactlist.php index 86afa607c1..c26e0a9024 100755 --- a/module/user/test/model/updatecontactlist.php +++ b/module/user/test/model/updatecontactlist.php @@ -29,31 +29,31 @@ $contact4 = (object)array('id' => 1, 'account' => 'user1', 'listName' => '联系 /* 测试必填项为空的情况。*/ $result = $userTest->updateContactListTest($contact1); r($result) && p('result') && e(0); // 列表名称和用户列表为空,返回 false。 -r($result) && p('errors:account') && e('``'); // 创建人无错误提示。 +r($result) && p('errors:account') && e('~~'); // 创建人无错误提示。 r($result) && p('errors:listName') && e('『列表名称』不能为空。'); // 列表名称不能为空。 r($result) && p('errors:userList') && e('『用户列表』不能为空。'); // 用户列表不能为空。 -r($result) && p('errors:public') && e('``'); // 是否公开无错误提示。 +r($result) && p('errors:public') && e('~~'); // 是否公开无错误提示。 /* 测试列表名称已存在的情况。*/ $result = $userTest->updateContactListTest($contact2); r($result) && p('result') && e(0); // 列表名称已存在,返回 false。 -r($result) && p('errors:account') && e('``'); // 创建人无错误提示。 +r($result) && p('errors:account') && e('~~'); // 创建人无错误提示。 r($result) && p('errors:listName') && e('『列表名称』已经有『联系人列表2』这条记录了。如果您确定该记录已删除,请到后台-系统设置-回收站还原。'); // 列表名称已存在。 -r($result) && p('errors:userList') && e('``'); // 用户列表无错误提示。 -r($result) && p('errors:public') && e('``'); // 是否公开无错误提示。 +r($result) && p('errors:userList') && e('~~'); // 用户列表无错误提示。 +r($result) && p('errors:public') && e('~~'); // 是否公开无错误提示。 /* 测试数据格式不符合数据库字段设置的情况。*/ $result = $userTest->updateContactListTest($contact3); r($result) && p('result') && e(0); // 创建人和列表名称过长,返回 false。 r($result) && p('errors:account') && e('『创建人』长度应当不超过『30』,且大于『0』。'); // 创建人过长。 r($result) && p('errors:listName') && e('『列表名称』长度应当不超过『60』,且大于『0』。'); // 列表名称过长。 -r($result) && p('errors:userList') && e('``'); // 用户列表无错误提示。 +r($result) && p('errors:userList') && e('~~'); // 用户列表无错误提示。 r($result) && p('errors:public') && e('『公共联系人』应当是数字。'); // 是否公开应当是数字。 /* 测试创建成功的情况。*/ $result = $userTest->updateContactListTest($contact4); r($result) && p('result') && e(1); // 创建成功,返回 true。 -r($result) && p('errors:account') && e('``'); // 创建人无错误提示。 -r($result) && p('errors:listName') && e('``'); // 列表名称无错误提示。 -r($result) && p('errors:userList') && e('``'); // 用户列表无错误提示。 -r($result) && p('errors:public') && e('``'); // 是否公开无错误提示。 +r($result) && p('errors:account') && e('~~'); // 创建人无错误提示。 +r($result) && p('errors:listName') && e('~~'); // 列表名称无错误提示。 +r($result) && p('errors:userList') && e('~~'); // 用户列表无错误提示。 +r($result) && p('errors:public') && e('~~'); // 是否公开无错误提示。 diff --git a/module/user/test/model/updatepassword.php b/module/user/test/model/updatepassword.php index 77318883e6..d555851b36 100755 --- a/module/user/test/model/updatepassword.php +++ b/module/user/test/model/updatepassword.php @@ -48,8 +48,8 @@ r($result) && p('errors:originalPassword') && e('原密码不正确'); // 原密 $result = $userTest->updatePasswordTest($user5); r($result) && p('result') && e(1); // 密码符合要求,返回 true。 -r($result) && p('errors:0') && e('``'); // 密码符合要求,不提示错误信息。 -r($result) && p('errors:password1') && e('``'); // 密码符合要求,不提示错误信息。 +r($result) && p('errors:0') && e('~~'); // 密码符合要求,不提示错误信息。 +r($result) && p('errors:password1') && e('~~'); // 密码符合要求,不提示错误信息。 $resetUser = $userTest->getByIdTest($app->user->account); r($resetUser->password == $password) && p() && e(1); // 数据库中的密码修改成功。