示例#1
0
 /**
  * @brief get data of all jobs using uploadpk
  * @return a json jobqueue data. 
  **/
 protected function getJobs($uploadPk)
 {
     $page = GetParm('page', PARM_INTEGER);
     if ($uploadPk > 0) {
         $upload_pks = array($uploadPk);
         $jobs = $this->showJobsDao->uploads2Jobs($upload_pks, $page);
     } else {
         $allusers = GetParm("allusers", PARM_INTEGER);
         $jobs = $this->showJobsDao->myJobs($allusers);
     }
     $jobsInfo = $this->showJobsDao->getJobInfo($jobs, $page);
     usort($jobsInfo, array($this, "compareJobsInfo"));
     $showJobData = $this->show($jobsInfo, $page);
     return new JsonResponse($showJobData);
 }
示例#2
0
 public function testMyJobs()
 {
     $groupId = 2;
     $GLOBALS['SysConf']['auth'][Auth::GROUP_ID] = $groupId;
     $GLOBALS['SysConf']['auth'][Auth::USER_ID] = 1;
     $this->uploadPermissionDao->shouldReceive('isAccessible')->withArgs(array(anything(), $groupId))->andReturnUsing(function ($upload, $group) {
         return $upload == 1 || $upload == 2 || $upload == 4;
     });
     $testOurJobs = $this->showJobsDao->myJobs(true);
     assertThat($testOurJobs, is(arrayContainingInAnyOrder($this->job_pks)));
     $testMyJobs = $this->showJobsDao->myJobs(false);
     assertThat($testMyJobs, equalTo(array(1)));
     $this->dbManager->queryOnce("UPDATE job SET job_queued=job_queued-INTERVAL '30 days' WHERE job_pk=1");
     $this->dbManager->prepare(__METHOD__ . 'insert.perm_upload', "INSERT INTO perm_upload (perm_upload_pk, perm, upload_fk, group_fk) VALUES (\$1, \$2, \$3, \$4)");
     $testOutdatedJobs = $this->showJobsDao->myJobs(true);
     assertThat($testOutdatedJobs, equalTo(array(2)));
 }