setConfig() public method

public setConfig ( array $config )
$config array
Beispiel #1
0
 /**
  * @covers ::setConfig
  * @covers ::getConfig
  */
 public function testSetConfig()
 {
     $jobby = new Jobby();
     $oldCfg = $jobby->getConfig();
     $jobby->setConfig(['dateFormat' => 'foo bar']);
     $newCfg = $jobby->getConfig();
     $this->assertEquals(count($oldCfg), count($newCfg));
     $this->assertEquals('foo bar', $newCfg['dateFormat']);
 }
Beispiel #2
0
use Psr\Log\LoggerInterface as Logger;
use DI\ContainerBuilder;
use Standard\Controllers\Cron\BetterBackgroundJob;
require __DIR__ . '/../vendor/autoload.php';
$containerBuilder = new ContainerBuilder();
$container = $containerBuilder->addDefinitions(require_once __DIR__ . '/../app/config/config_cli.php')->useAnnotations(true)->build();
try {
    $crons = TableRegistry::get('Cron')->find()->hydrate(false)->toArray();
    $settings = TableRegistry::get('CronSettings')->find()->hydrate(false)->toArray()[0];
} catch (\Exception $e) {
    $container->get(Logger::class)->error('Error while fetching DB contents: ' . $e->getMessage());
    return;
}
$container->set('jobby', function () use($container) {
    $j = new Jobby($container->get('cron-config')['emails'] ? ['mailer' => 'smtp', 'smtpUsername' => getenv('MAILGUN_SMTP_LOGIN'), 'smtpPassword' => getenv('MAILGUN_SMTP_PASS'), 'smtpHost' => getenv('MAILGUN_SMTP_HOST')] : []);
    $j->setConfig(['jobClass' => BetterBackgroundJob::class]);
    return $j;
});
/** @var array $cron */
foreach ($crons as $cron) {
    $cron = array_merge($settings, array_filter($cron));
    $jobName = $cron['name'];
    unset($cron['name']);
    $cron['output'] = $cron['output'] ?? false ? $container->get('site-config')['logFolder'] . '/' . $cron['output'] : $container->get('site-config')['logFolder'] . '/cron.log';
    try {
        if (strpos($cron['command'], '::')) {
            // Assuming it's a Class::method syntax
            list($class, $method) = explode('::', $cron['command']);
            $cron['command'] = function () use($class, $method) {
                $containerBuilder = new ContainerBuilder();
                $container = $containerBuilder->addDefinitions(require_once __DIR__ . '/../app/config/config_cli.php')->useAnnotations(true)->build();
Beispiel #3
0
 /**
  * @covers Jobby\Jobby::setConfig
  * @covers Jobby\Jobby::getConfig
  */
 public function testSetConfig()
 {
     $jobby = new Jobby();
     $oldCfg = $jobby->getConfig();
     $jobby->setConfig(array("dateFormat" => "foo bar"));
     $newCfg = $jobby->getConfig();
     $this->assertEquals(count($oldCfg), count($newCfg));
     $this->assertEquals("foo bar", $newCfg["dateFormat"]);
 }