public static function testUser(SQLiteDB $db) { static $userinfo = array('username' => 'testuser', 'password' => 'testpassword', 'email' => 'testemail', 'phone_number' => 'testphone', 'carrier' => 'testcarrier'); static $userinfo_2 = array('username' => 'testuser2', 'password' => 'testpassword2', 'email' => 'testemail2', 'phone_number' => 'testphone2', 'carrier' => 'testcarrier2'); // SQLiteUser::create test $user = SQLiteUser::create($userinfo, $db); if ($user === NULL) { throw new Exception('SQLiteUser::create test failed'); } // SQLiteUser::find test $find_user = SQLiteUser::find('username', $userinfo['username'], $db); if ($find_user === NULL) { throw new Exception('SQLiteUser::find test failed'); } // SQLiteUser::delete test $user->delete(); $deleted_user = SQLiteUser::find('username', $userinfo['username'], $db); if ($deleted_user !== NULL) { throw new Exception('SQLiteUser::delete test failed'); } // SQLiteUser::get test $user = SQLiteUser::create($userinfo, $db); $get_userinfo = $user->get(array_keys($userinfo)); if ($get_userinfo != $userinfo) { throw new Exception('SQLiteUser::get test failed'); } // SQLiteUser::get no-carrier-as-attr test $userinfo_nocarrier = $userinfo; unset($userinfo_nocarrier['carrier']); $get_userinfo_nocarrier = $user->get(array_keys($userinfo_nocarrier)); if ($get_userinfo_nocarrier != $userinfo_nocarrier) { throw new Exception('SQLiteUser::get no-carrier-as-attr test failed'); } // SQLiteUser::set test $user->set($userinfo_2); $set_userinfo = $user->get(array_keys($userinfo_2)); if ($set_userinfo != $userinfo_2) { throw new Exception('SQLiteUser::set test failed'); } // SQLiteUser::set no-carrier-as-attr test $userinfo_2_nocarrier = $userinfo_2; unset($userinfo_2_nocarrier['carrier']); $get_userinfo_2_nocarrier = $user->get(array_keys($userinfo_2_nocarrier)); if ($get_userinfo_2_nocarrier != $userinfo_2_nocarrier) { throw new Exception('SQLiteUser::set no-carrier-as-attr test failed'); } // SQLiteUser::__get test $get_username = $user->get(array('username')); if ($user->username !== $get_username['username']) { throw new Exception('SQLiteUser::__get test failed'); } // SQLiteUser::__set test $user->username = '******'; if ($user->username !== 'newusername') { throw new Exception('SQLiteUser::__set test failed'); } $user->delete(); }