From cfafdc00f1163810d0ac89e47337325896c7429c Mon Sep 17 00:00:00 2001 From: liumengyi Date: Tue, 19 Dec 2023 17:50:46 +0800 Subject: [PATCH] * Refactor upgradeModel::isError, and add its unit test. --- module/upgrade/model.php | 3 ++- module/upgrade/test/model/iserror.php | 27 +++++++++++++++++++++++++++ module/upgrade/test/upgrade.class.php | 14 ++++++++++++++ 3 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 module/upgrade/test/model/iserror.php diff --git a/module/upgrade/model.php b/module/upgrade/model.php index 27fa0e537f..f05d1baf2b 100644 --- a/module/upgrade/model.php +++ b/module/upgrade/model.php @@ -2108,12 +2108,13 @@ class upgradeModel extends model } /** + * 判断是否出现错误。 * Judge any error occurs. * * @access public * @return bool */ - public function isError() + public function isError(): bool { return !empty(static::$errors); } diff --git a/module/upgrade/test/model/iserror.php b/module/upgrade/test/model/iserror.php new file mode 100644 index 0000000000..44cbda7d5a --- /dev/null +++ b/module/upgrade/test/model/iserror.php @@ -0,0 +1,27 @@ +#!/usr/bin/env php +isError(); +cid=1 + +- 测试 static::$errors 为 errors 时,是否有报错 @1 +- 测试 static::$errors 为 emptyErrors 时,是否有报错 @0 + +**/ + +include dirname(__FILE__, 5) . '/test/lib/init.php'; +include dirname(__FILE__, 2) . '/upgrade.class.php'; + +zdTable('user')->config('user')->gen(5); + +su('admin'); + +$upgrade = new upgradeTest(); + +$errors = array('error1', 'error2', 'error3'); +$emptyErrors = array(); +r($upgrade->isErrorTest($errors)) && p() && e('1'); // 测试 static::$errors 为 errors 时,是否有报错 +r($upgrade->isErrorTest($emptyErrors)) && p() && e('0'); // 测试 static::$errors 为 emptyErrors 时,是否有报错 diff --git a/module/upgrade/test/upgrade.class.php b/module/upgrade/test/upgrade.class.php index 127d157a55..efe42f0614 100644 --- a/module/upgrade/test/upgrade.class.php +++ b/module/upgrade/test/upgrade.class.php @@ -191,4 +191,18 @@ class upgradeTest $groupPrivs = $tester->dao->select('count(1) as count')->from(TABLE_GROUPPRIV)->fetch('count'); return "groups:{$groups},groupPrivs:{$groupPrivs}"; } + + /** + * 测试判断是否出现错误。 + * Test judge any error occurs. + * + * @param array $errors + * @access public + * @return bool + */ + public function isErrorTest(array $errors): bool + { + $this->objectModel::$errors = $errors; + return $this->objectModel->isError(); + } }