/** * @expectedException \supervisormanager\components\supervisor\exceptions\ProcessException */ public function testGetProcessOutput() { vfsStream::setup('root', null, ['logErrorFile.txt' => 'Test error log output', 'logOutputFile.txt' => 'Test log output']); $processConfig = ['stderr_logfile' => vfsStream::url('root') . '/logErrorFile.txt', 'stdout_logfile' => vfsStream::url('root') . '/logOutputFile.txt']; $this->config->method('callMethod')->with($this->equalTo('supervisor.getProcessInfo'), $this->equalTo(['test-process']))->willReturn($processConfig); $this->assertEquals('Test error log output', $this->process->getProcessOutput('stderr_logfile')); $this->assertEquals('Test log output', $this->process->getProcessOutput('stdout_logfile')); $this->process->getProcessOutput('stdout'); }
/** * Sort all available processes by relative group. * * @return array */ public function getAllProcessesByGroup() { $processList = $this->getAllProcessInfo(); $groups = []; foreach ($processList as $process) { $groupName = $process['group']; if (!in_array($groupName, array_keys($groups))) { $groups[$groupName] = []; } if (!isset($process['priority'])) { $process['priority'] = Process::getProcessPriority($groupName); } $groups[$groupName]['processList'][] = $process; } return $groups; }
/** * @param $processName * * @return Process * @throws \yii\base\InvalidConfigException */ private function _supervisorProcess($processName) { return \Yii::$container->get(Process::className(), [$processName]); }