config = $this->createMock(IConfig::class); $this->userManager = $this->createMock(IUserManager::class); $this->expiration = $this->createMock(Expiration::class); $this->jobList = $this->createMock(IJobList::class); $this->time = $this->createMock(ITimeFactory::class); $this->time->method('getTime') ->willReturn(999999999); $this->jobList->expects($this->once()) ->method('setLastRun'); $this->jobList->expects($this->once()) ->method('setExecutionTime'); } public function testConstructAndRun(): void { $this->config->method('getAppValue') ->with('files_trashbin', 'background_job_expire_trash', 'yes') ->willReturn('yes'); $job = new ExpireTrash($this->config, $this->userManager, $this->expiration, $this->time); $job->start($this->jobList); } public function testBackgroundJobDeactivated(): void { $this->config->method('getAppValue') ->with('files_trashbin', 'background_job_expire_trash', 'yes') ->willReturn('no'); $this->expiration->expects($this->never()) ->method('getMaxAgeAsTimestamp'); $job = new ExpireTrash($this->config, $this->userManager, $this->expiration, $this->time); $job->start($this->jobList); } }