Files
EasySoft-ZenTaoPMS/module/user/test/model/checkprogrampriv.php
T
2023-10-16 11:30:42 +08:00

44 lines
2.3 KiB
PHP
Executable File

#!/usr/bin/env php
<?php
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/user.class.php';
su('admin');
/**
title=测试 userModel->checkProgramPriv();
cid=1
pid=1
传入admin,判断admin用户是否有权限 >> 1
传入项目集、用户名,判断test3用户是否对此项目集有权限 >> 0
传入项目集、用户名,判断test2用户是否对此项目集有权限 >> 1
传入项目集、用户名、干系人、白名单,判断user10用户是否对此项目集有权限 >> 1
传入项目集、用户名、干系人、白名单,判断user60用户是否对此项目集有权限 >> 1
*/
$user = new userTest();
$program = new stdclass();
$program->id = 1;
$program->name = '测试项目集';
$program->PM = 'test2';
$program->openedBy = 'pm1';
$program->acl = 'private';
$program->parent = 0;
$stakeholders['user10'] = 'user10';
$whiteList['user60'] = 'user60';
$admins['test6'] = 'test6';
$user->objectModel->app->company->admins = ',admin,';
r($user->checkProgramPrivTest(new stdclass(), 'admin')) && p() && e('1'); //传入admin,判断admin用户是否有权限
r($user->checkProgramPrivTest($program, 'test3')) && p() && e('0'); //传入项目集、用户名,判断test3用户是否对此项目集有权限
r($user->checkProgramPrivTest($program, 'test2')) && p() && e('1'); //传入项目集、用户名,判断test2用户是否对此项目集有权限
r($user->checkProgramPrivTest($program, 'user10', $stakeholders)) && p() && e('1'); //传入项目集、用户名、干系人、白名单,判断user10用户是否对此项目集有权限
r($user->checkProgramPrivTest($program, 'user60', $stakeholders, $whiteList)) && p() && e('1'); //传入项目集、用户名、干系人、白名单,判断user60用户是否对此项目集有权限
r($user->checkProgramPrivTest($program, 'test6', $stakeholders, $whiteList, $admins)) && p() && e('1'); //传入项目集、用户名、干系人、白名单,admins, 判断test6用户是否对此项目集有权限
$program->acl = 'open';
r($user->checkProgramPrivTest($program, 'test10')) && p() && e('1'); //传入公开项目集,判断test10用户是否对此项目集有权限