Beispiel #1
0
$project->attachEvents();
$webhook->attachEvents();
$notification->attachEvents();
// Load translations
$language = $config->get('language', 'en_US');
if ($language !== 'en_US') {
    Translator::load($language);
}
$server = new Server();
$server->authentication(array('jsonrpc' => $config->get('api_token')));
/**
 * Project procedures
 */
$server->register('createProject', function ($name) use($project) {
    $values = array('name' => $name);
    list($valid, ) = $project->validateCreation($values);
    return $valid && $project->create($values);
});
$server->register('getProjectById', function ($project_id) use($project) {
    return $project->getById($project_id);
});
$server->register('getProjectByName', function ($name) use($project) {
    return $project->getByName($name);
});
$server->register('getAllProjects', function () use($project) {
    return $project->getAll();
});
$server->register('updateProject', function ($id, $name, $is_active = null, $is_public = null, $token = null) use($project) {
    $values = array('id' => $id, 'name' => $name, 'is_active' => $is_active, 'is_public' => $is_public, 'token' => $token);
    foreach ($values as $key => $value) {
        if (is_null($value)) {
Beispiel #2
0
 public function testIdentifier()
 {
     $p = new Project($this->container);
     // Creation
     $this->assertEquals(1, $p->create(array('name' => 'UnitTest1', 'identifier' => 'test1')));
     $this->assertEquals(2, $p->create(array('name' => 'UnitTest2')));
     $project = $p->getById(1);
     $this->assertNotEmpty($project);
     $this->assertEquals('TEST1', $project['identifier']);
     $project = $p->getById(2);
     $this->assertNotEmpty($project);
     $this->assertEquals('', $project['identifier']);
     // Update
     $this->assertTrue($p->update(array('id' => '2', 'identifier' => 'test2')));
     $project = $p->getById(2);
     $this->assertNotEmpty($project);
     $this->assertEquals('TEST2', $project['identifier']);
     $project = $p->getByIdentifier('test1');
     $this->assertNotEmpty($project);
     $this->assertEquals('TEST1', $project['identifier']);
     $project = $p->getByIdentifier('');
     $this->assertFalse($project);
     // Validation rules
     $r = $p->validateCreation(array('name' => 'test', 'identifier' => 'TEST1'));
     $this->assertFalse($r[0]);
     $r = $p->validateCreation(array('name' => 'test', 'identifier' => 'test1'));
     $this->assertFalse($r[0]);
     $r = $p->validateModification(array('id' => 1, 'name' => 'test', 'identifier' => 'TEST1'));
     $this->assertTrue($r[0]);
     $r = $p->validateModification(array('id' => 1, 'name' => 'test', 'identifier' => 'test3'));
     $this->assertTrue($r[0]);
     $r = $p->validateModification(array('id' => 1, 'name' => 'test', 'identifier' => ''));
     $this->assertTrue($r[0]);
     $r = $p->validateModification(array('id' => 1, 'name' => 'test', 'identifier' => 'TEST2'));
     $this->assertFalse($r[0]);
     $r = $p->validateCreation(array('name' => 'test', 'identifier' => 'a-b-c'));
     $this->assertFalse($r[0]);
     $r = $p->validateCreation(array('name' => 'test', 'identifier' => 'test 123'));
     $this->assertFalse($r[0]);
 }