From b70dc95c6c1048abad077652720ece125d888692 Mon Sep 17 00:00:00 2001 From: Yuan Chiu Date: Fri, 19 Sep 2014 20:33:31 +0800 Subject: [PATCH] UserAdmin Class: remove --- htdocs/lib/User/UserAdmin.php | 26 ++++++++++++++++++++++++++ tests/User/UserAdminTest.php | 12 +++++++----- 2 files changed, 33 insertions(+), 5 deletions(-) diff --git a/htdocs/lib/User/UserAdmin.php b/htdocs/lib/User/UserAdmin.php index db887a1..cff0cfa 100644 --- a/htdocs/lib/User/UserAdmin.php +++ b/htdocs/lib/User/UserAdmin.php @@ -56,6 +56,7 @@ class UserAdmin { * 'realname' => 'Eric Chiu', // (optional) * 'email' => 'eric@example.tw', // (optional) * 'memo' => '' ) // (optional) + * @throw UElearning\User\Exception\UserIdExistException * @since 2.0.0 */ public function create($userInfoArray) { @@ -145,5 +146,30 @@ class UserAdmin { if( $info != null ) return true; else return false; } + + /** + * 移除此使用者 + * + * @param string $userName 帳號名稱 + * @throw UElearning\User\Exception\UserNoFoundException + * @since 2.0.0 + */ + public function remove($userName) { + + // 若有此使用者 + if($this->isExist($userName)) { + + // TODO: 檢查所有關聯的資料,確認是否可以移除 + + // 移除資料庫中的使用者 + $db = new Database\DBUser(); + $db->deleteUser($userName); + } + // 若沒有這位使用者 + else { + throw new Exception\UserNoFoundException($userName); + } + + } } \ No newline at end of file diff --git a/tests/User/UserAdminTest.php b/tests/User/UserAdminTest.php index 873c4ee..b3c8212 100644 --- a/tests/User/UserAdminTest.php +++ b/tests/User/UserAdminTest.php @@ -71,12 +71,14 @@ class UserAdminTest extends \PHPUnit_Framework_TestCase */ public function testDeleteUser($uId) { - // TODO: 待UserAdmin的移除功能寫好後,請改用UserAdmin - require_once UELEARNING_LIB_ROOT.'/Database/DBUser.php'; - // 建立資料庫管理物件 - $db = new Database\DBUser(); - $db->deleteUser($uId); + $userAdmin = new UserAdmin(); + + // 移除此使用者 + $userAdmin->remove($uId); + + // 檢查是否已確實建立 + $this->assertEquals($userAdmin->isExist($uId), false); }