Skip to content

Commit

Permalink
Added some tests
Browse files Browse the repository at this point in the history
  • Loading branch information
christeredvartsen committed Jul 13, 2011
1 parent 33c36c7 commit 1b9c66f
Showing 1 changed file with 85 additions and 0 deletions.
85 changes: 85 additions & 0 deletions tests/integration/PHSA/Database/Driver/MySQLIntegrationTest.php
@@ -1,6 +1,7 @@
<?php
namespace PHSA\Database\Driver;

use PHSA\Database\Query;
use PHSA\Database\DriverInterface;

class MySQLIntegrationTest extends \PHPUnit_Framework_TestCase {
Expand Down Expand Up @@ -48,4 +49,88 @@ public function tearDown() {
$this->driver = null;
}
}

public function testGetAllRules() {
$ruleset = $this->driver->getAllRules();
$this->assertSame(6, count($ruleset));
}

public function testGetRulesWithQuery() {
$query = new Query();
$query->setUsers(array('christer', 'ay'));
$ruleset = $this->driver->getRules($query);
$this->assertSame(2, count($ruleset));

$query = new Query();
$query->setRepositories(array('repos', 'repos1'));
$ruleset = $this->driver->getRules($query);
$this->assertSame(4, count($ruleset));

$query = new Query();
$query->setGroups(array('foobar', 'vgmobil'));
$ruleset = $this->driver->getRules($query);
$this->assertSame(2, count($ruleset));

$query = new Query();
$query->setRole(DriverInterface::ROLE_USER);
$ruleset = $this->driver->getRules($query);
$this->assertSame(3, count($ruleset));

$query = new Query();
$query->setRole(DriverInterface::ROLE_GROUP);
$ruleset = $this->driver->getRules($query);
$this->assertSame(3, count($ruleset));

$query = new Query();
$query->setRule(DriverInterface::RULE_ALLOW);
$ruleset = $this->driver->getRules($query);
$this->assertSame(4, count($ruleset));

$query = new Query();
$query->setRule(DriverInterface::RULE_DENY);
$ruleset = $this->driver->getRules($query);
$this->assertSame(2, count($ruleset));
}

public function testAllowUser() {
$this->assertTrue($this->driver->allowUser('someuser', 'somerepos'));
$query = new Query();
$query->setUsers(array('someuser'))->setRepositories(array('somerepos'))->setRule(DriverInterface::RULE_ALLOW)->setRole(DriverInterface::ROLE_USER);
$ruleset = $this->driver->getRules($query);
$this->assertSame(1, count($ruleset));
}

public function testDenyUser() {
$this->assertTrue($this->driver->denyUser('someuser', 'somerepos'));
$query = new Query();
$query->setUsers(array('someuser'))->setRepositories(array('somerepos'))->setRule(DriverInterface::RULE_DENY)->setRole(DriverInterface::ROLE_USER);
$ruleset = $this->driver->getRules($query);
$this->assertSame(1, count($ruleset));
}

public function testAllowGroup() {
$this->assertTrue($this->driver->allowGroup('somegroup', 'somerepos'));
$query = new Query();
$query->setGroups(array('somegroup'))->setRepositories(array('somerepos'))->setRule(DriverInterface::RULE_ALLOW)->setRole(DriverInterface::ROLE_GROUP);
$ruleset = $this->driver->getRules($query);
$this->assertSame(1, count($ruleset));
}

public function testDenyGroup() {
$this->assertTrue($this->driver->denyGroup('somegroup', 'somerepos'));
$query = new Query();
$query->setGroups(array('somegroup'))->setRepositories(array('somerepos'))->setRule(DriverInterface::RULE_DENY)->setRole(DriverInterface::ROLE_GROUP);
$ruleset = $this->driver->getRules($query);
$this->assertSame(1, count($ruleset));
}

public function testRemoveRules() {
$query = new Query();
$query->setUsers(array('christer', 'andrer'));
$this->assertSame(2, $this->driver->removeRules($query));
}

public function testRemoveAllRules() {
$this->assertSame(6, $this->driver->removeAllRules());
}
}

0 comments on commit 1b9c66f

Please sign in to comment.