/** * @depends testImpersonate */ public function testDomainStats(UserContext $context) { $domainAsAdmin = self::$user->getDomain(TEST_USER_DOMAIN); $domainAsUser = $context->getDomain(TEST_USER_DOMAIN); $this->assertEquals(strval($domainAsAdmin), strval($domainAsUser)); $this->assertEquals($domainAsAdmin->getBandwidthUsed(), $domainAsUser->getBandwidthUsed()); $this->assertEquals($domainAsAdmin->getDiskUsage(), $domainAsUser->getDiskUsage()); $this->assertEquals($context, $domainAsUser->getContext()); $this->assertEquals(self::$user->getUsername(), $domainAsUser->getOwner()->getUsername()); // Should be no further objects or settings yet $this->assertEmpty($domainAsUser->getAliases()); $this->assertNull($domainAsUser->getBandwidthLimit()); $this->assertEmpty($domainAsUser->getPointers()); $this->assertEmpty($domainAsUser->getForwarders()); $this->assertEmpty($domainAsUser->getMailboxes()); }
/** * Database constructor. * * @param string $name Name of the database * @param User $owner Database owner * @param UserContext $context Context within which the object is valid */ public function __construct($name, User $owner, UserContext $context) { parent::__construct($name, $context); $this->owner = $owner; $this->databaseName = $this->owner->getUsername() . '_' . $this->getName(); }