/** * Get service. * * @return VhostBuilderService */ public function serviceProvider() { $service = $this->getVhostBuilderService(); $certificate = new Certificate(); $user = new User(); $defaultIpSsl = new IpAddress(); $defaultIp = new IpAddress(); $certificate->setName('normal')->setCertificateFile('asd')->setCertificateKeyFile('dodooodood'); $user->setName('jeff')->setGroupname('jeff')->setUid(1000)->setGid(1000); $defaultIp->setAlias('default, no ssl')->setHasSsl(false)->setIp('127.0.0.1')->setPort(80); $defaultIpSsl->setAlias('default, ssl')->setHasSsl(true)->setIp('127.0.0.1')->setPort(443); $domain1 = new Domain(); $domain2 = new Domain(); $domain3 = new Domain(); $domain1->setDomain('lampcp1.de')->setPath('/var/www/lampcp1.de')->setParsePhp(true)->setUser($user)->setWebroot('htdocs')->setCertificate($certificate); $domain2->setDomain('lampcp2.de')->setPath('/var/www/lampcp2.de')->setParsePhp(true)->setUser($user)->setWebroot('htdocs'); $domain3->setDomain('lampcp3.de')->setPath('/var/www/lampcp3.de')->setParsePhp(false)->setUser($user)->setWebroot('htdocs')->setCertificate($certificate); $domain1->getIpaddress()->add($defaultIp); $domain2->getIpaddress()->add($defaultIpSsl); $domain2->getIpaddress()->add($defaultIp); $domain3->getIpaddress()->add($defaultIpSsl); $subdomain1 = new Subdomain($domain1); $subdomain2 = new Subdomain($domain2); $subdomain1->setSubdomain('nopaste'); $subdomain2->setSubdomain('wiki'); $domain1->getSubdomain()->add($subdomain1); $domain2->getSubdomain()->add($subdomain2); $service->setDomains(array($domain1, $domain2, $domain3)); return array(array($service)); }
/** * Provide test-data. */ public function dataProvider() { $certificate = new Certificate(); $domainWithoutIp = new Domain(); $domainWithoutIp->setDomain('withoutIp.de'); $ipaddressWithSSL = new IpAddress(); $ipaddressWithSSL->setHasSsl(true); $ipaddressWithoutSSL = new IpAddress(); $ipaddressWithoutSSL->setHasSsl(false); $domainWithIPs = new Domain(); $domainWithIPs->setDomain('withIp.de')->setIpaddress(new ArrayCollection(array($ipaddressWithoutSSL, $ipaddressWithSSL)))->setCertificate($certificate); $subdomainWithSSL = new Subdomain($domainWithIPs); $subdomainWithSSL->setCertificate($certificate)->setSubdomain('withssl'); $subdomainWithSSL2 = new Subdomain($domainWithoutIp); $subdomainWithSSL2->setCertificate($certificate)->setSubdomain('withssl'); $subdomainWithoutSSL = new Subdomain($domainWithIPs); $subdomainWithoutSSL->setSubdomain('withoutssl'); $subdomainWithoutSSL2 = new Subdomain($domainWithoutIp); $subdomainWithoutSSL2->setSubdomain('withoutssl'); return array(array($domainWithIPs, $subdomainWithoutSSL), array($domainWithIPs, $subdomainWithSSL), array($domainWithoutIp, $subdomainWithSSL2), array($domainWithoutIp, $subdomainWithoutSSL2), array($domainWithIPs), array($domainWithoutIp)); }
/** * Provide test subdomains. */ public function subdomainProvider() { $domains = array(); $certRoot = new Certificate(); $certAlias = new Certificate(); $certRoot->setName('root'); $certAlias->setName('alias'); /* * Collect test domains from provider. */ foreach ($this->domainProvider() as $arrDomain) { $domains[] = array_pop($arrDomain); } $alias = new Subdomain(array_pop($domains)); $root = new Subdomain(array_pop($domains)); $alias->setSubdomain('alias')->setPath('/var/www/alias/alias')->setCertificate($certAlias)->setParent($root); $root->setSubdomain('root')->setPath('/var/www/root/root')->setCertificate($certRoot); return array(array($alias), array($root)); }
/** * Test getServerAlias() */ public function testGetServerAlias() { $vhost = new Vhost(); $domain = new Domain(); $subdomain = new Subdomain($domain); $domain->setDomain('lampcp.de'); $subdomain->setSubdomain('test'); // www.lampcp.de $vhost->setDomain($domain); $result0 = $vhost->getServerAlias(); // *.lampcp.de $domain->setIsWildcard(true); $result1 = $vhost->getServerAlias(); // www.test.lampcp.de $vhost->setSubdomain($subdomain); $result2 = $vhost->getServerAlias(); // *.test.lampcp.de $subdomain->setIsWildcard(true); $result3 = $vhost->getServerAlias(); $this->assertEquals('www.lampcp.de', array_pop($result0)); $this->assertEquals('*.lampcp.de', array_pop($result1)); $this->assertEquals('www.test.lampcp.de', array_pop($result2)); $this->assertEquals('*.test.lampcp.de', array_pop($result3)); }