示例#1
0
 /**
  * Test loading of repository configurations.
  */
 public function testLoadRepos()
 {
     $options = array('sendEmails' => false, 'sendEmailAuthor' => false, 'mailRecipients' => array(), 'allowedAuthors' => '*', 'allowedHosts' => '*');
     $hook = new Hook(__DIR__, $options);
     $reposDir = $this->makeTempDir('repos.d');
     $testFile1 = $this->makeFile($reposDir, 'test1.yml');
     $testFile2 = $this->makeFile($reposDir, 'test2.yml');
     $count = $hook->loadRepos($testFile1);
     $this->assertEquals(0, $count, 'Wrong number of loaded repositories');
     for ($i = 1; $i <= 3; ++$i) {
         $this->generateRepoConfigFile($testFile1, $i);
         $count = $hook->loadRepos($reposDir);
         $this->assertEquals($i, $count, sprintf('Wrong number of loaded repositories, found %s, expected %s', $count, $i));
     }
     $this->generateRepoConfigFile($testFile2, 2);
     $count = $hook->loadRepos($reposDir);
     $this->assertEquals(5, $count, sprintf('Wrong number of loaded repositories, found %s, expected %s', $count, 5));
 }
<?php

/**
 * Created by PhpStorm.
 * User: zyuskin_en
 * Date: 31.12.14
 * Time: 1:06
 */
include __DIR__ . '/vendor/autoload.php';
use AmaxLab\GitWebHook\Hook;
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
$logger = new Logger('git-web-hook');
$logger->pushHandler(new StreamHandler(__DIR__ . DIRECTORY_SEPARATOR . 'log' . DIRECTORY_SEPARATOR . 'hook.log', Logger::WARNING));
// or you can write logs to /var/log or somewhere else
$hook = new Hook(__DIR__, array(), $logger);
$hook->loadConfig(__DIR__ . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'config.yml');
// you can copy config.yml.dist to config.yml and edit it
$hook->execute();