15 if (session_status() == PHP_SESSION_NONE) {
19 require_once dirname(dirname(dirname(dirname(__DIR__)))) .
20 '/lib/php/Plugin/FO_Plugin.php';
70 protected function setUp() : void
72 $this->
dbManager = M::mock(ModernDbManager::class);
73 $this->folderDao = M::mock(FolderDao::class);
74 $this->uploadDao = M::mock(UploadDao::class);
78 $this->assertCountBefore = \Hamcrest\MatcherAssert::getCount();
89 $this->addToAssertionCount(
90 \Hamcrest\MatcherAssert::getCount() - $this->assertCountBefore);
101 $agent_list[2] =
'nomos,monk';
102 $agent_list[3] =
'nomos,ojo';
103 $agent_list[4] =
'copyright,ecc';
111 for ($i = 2; $i <= 4; $i++) {
113 'user_pk' => $i,
'user_name' =>
"user$i",
'user_desc' =>
"user $i",
114 'user_email' =>
"user$i@local",
'email_notify' =>
'y',
115 'root_folder_fk' => 2,
'group_fk' => 2,
'user_perm' => $perm_list[$i],
116 'user_agent_list' => $agent_list[$i],
'default_bucketpool_fk' => 2
118 $userRows[$i] = $row;
133 foreach ($rows as $row) {
134 if ($currentUser ===
null || $row[
'user_pk'] == $currentUser) {
135 $user =
new User($row[
"user_pk"], $row[
"user_name"], $row[
"user_desc"],
136 $row[
"user_email"], $row[
"user_perm"], $row[
"root_folder_fk"],
137 $row[
"email_notify"], $row[
"user_agent_list"], $row[
'group_fk'], $row[
"default_bucketpool_fk"]);
139 $user =
new User($row[
"user_pk"], $row[
"user_name"], $row[
"user_desc"],
140 null,
null,
null,
null,
null,
null);
142 $users[$row[
"user_pk"]] = $user->getArray();
159 $sql =
'SELECT user_pk, user_name, user_desc, user_email,
160 email_notify, root_folder_fk, group_fk, user_perm, user_agent_list, ' .
161 'default_bucketpool_fk FROM users;';
162 $statement = DbHelper::class .
"::getUsers.getAllUsers";
165 $this->
dbManager->shouldReceive(
'getRows')
166 ->withArgs([$sql, [], $statement])
168 ->andReturn($userRows);
171 $actualUsers = $this->dbHelper->getUsers();
174 foreach ($actualUsers as $user) {
175 $allUsers[] = $user->getArray();
178 $this->assertEquals($expectedUsers, $allUsers);
193 $sql =
'SELECT user_pk, user_name, user_desc, user_email,
194 email_notify, root_folder_fk, group_fk, user_perm, user_agent_list, ' .
195 'default_bucketpool_fk FROM users;';
196 $statement = DbHelper::class .
"::getUsers.getAllUsers";
199 $this->
dbManager->shouldReceive(
'getRows')
200 ->withArgs([$sql, [], $statement])
202 ->andReturn($userRows);
206 $actualUsers = $this->dbHelper->getUsers();
208 foreach ($actualUsers as $user) {
209 $allUsers[] = $user->getArray();
211 $this->assertEquals($expectedUsers, $allUsers);
226 $sql =
"SELECT user_pk, user_name, user_desc, user_email,
227 email_notify, root_folder_fk, group_fk, user_perm, user_agent_list, default_bucketpool_fk FROM users
228 WHERE user_pk = $1;";
229 $statement = DbHelper::class .
"::getUsers.getSpecificUser";
232 $this->
dbManager->shouldReceive(
'getRows')
233 ->withArgs([$sql, [$userId], $statement])
235 ->andReturn([$userRows[$userId]]);
238 $actualUsers = $this->dbHelper->getUsers($userId);
241 foreach ($actualUsers as $user) {
242 $allUsers[] = $user->getArray();
244 $this->assertEquals([$expectedUsers[$userId]], $allUsers);
260 $sql =
"SELECT user_pk, user_name, user_desc, user_email,
261 email_notify, root_folder_fk, group_fk, user_perm, user_agent_list, default_bucketpool_fk FROM users
262 WHERE user_pk = $1;";
263 $statement = DbHelper::class .
"::getUsers.getSpecificUser";
266 $this->
dbManager->shouldReceive(
'getRows')
267 ->withArgs([$sql, [$fetchId], $statement])
269 ->andReturn([$userRows[$fetchId]]);
272 $actualUsers = $this->dbHelper->getUsers($fetchId);
275 foreach ($actualUsers as $user) {
276 $allUsers[] = $user->getArray();
278 $this->assertEquals([$expectedUsers[$fetchId]], $allUsers);
Contains the constants and helpers for authentication of user.
Provides helper methods to access database for REST api.
Model to hold user information.
setUp()
Setup test objects.
testGetUsersAllNonAdmin()
testGetUsersSingleUserAdmin()
generateUserFromRow($rows, $currentUser=null)
tearDown()
Remove test objects.
testGetUsersSingleUserNonAdmin()
#define PLUGIN_DB_WRITE
Plugin requires write permission on DB.
#define PLUGIN_DB_READ
Plugin requires read permission on DB.
#define PLUGIN_DB_ADMIN
Plugin requires admin level permission on DB.
fo_dbManager * dbManager
fo_dbManager object