Optimized code for FormatFunctionTest

This commit is contained in:
Kevin Frantz 2019-03-29 18:44:22 +01:00
parent 94b84527a8
commit fb4dd58cde
3 changed files with 48 additions and 20 deletions

View File

@ -1,6 +1,7 @@
#!/bin/bash
(
cd "$(dirname "$(readlink -f "${0}")")/../docker-symfony/" &&
cd "$(dirname "$(readlink -f "${0}")")/../docker-symfony/" &&
docker-compose exec php php /var/www/symfony/bin/console cache:clear &&
docker-compose exec php php /var/www/symfony/bin/console cache:clear --env=prod
docker-compose exec php php /var/www/symfony/bin/console cache:clear --env=prod &&
docker-compose exec php php /var/www/symfony/bin/console cache:clear --env=test
)

View File

@ -4,43 +4,59 @@ namespace Tests\Functional;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
use Symfony\Bundle\FrameworkBundle\Client;
/**
* @author kevinfrantz
*/
class FormatFunctionTest extends WebTestCase
{
/**
* @var Client
*/
private $client;
public function setUp(): void
{
$this->client = static::createClient();
}
public function testHomepage(): void
{
$client = static::createClient();
$client->request(Request::METHOD_GET, 'api/rest/source/HOMEPAGE');
$this->assertEquals(200, $client->getResponse()->getStatusCode());
$this->assertContains('<html', $client->getResponse()->getContent());
$this->client->request(Request::METHOD_GET, 'api/rest/source/HOMEPAGE');
$this->assertEquals(200, $this->client->getResponse()
->getStatusCode());
$this->assertJson($this->client->getResponse()
->getContent());
}
public function testHomepageWithHTML(): void
{
$client = static::createClient();
$client->request(Request::METHOD_GET, 'api/rest/source/HOMEPAGE.html');
$this->assertEquals(200, $client->getResponse()->getStatusCode());
$this->assertContains('<html', $client->getResponse()->getContent());
$this->client->request(Request::METHOD_GET, 'api/rest/source/HOMEPAGE.html');
$this->assertEquals(200, $this->client->getResponse()
->getStatusCode());
$this->assertContains('<html', $this->client->getResponse()
->getContent());
}
public function testHomepageWithJSON(): void
{
$client = static::createClient();
$client->request(Request::METHOD_GET, 'api/rest/source/HOMEPAGE.json');
echo $client->getResponse()->getContent();
$this->assertEquals(200, $client->getResponse()->getStatusCode());
// $this->assertContains('<html', $client->getResponse()->getContent());
$this->client->request(Request::METHOD_GET, 'api/rest/source/HOMEPAGE.json');
$this->assertEquals(200, $this->client->getResponse()
->getStatusCode());
$this->assertJson($this->client->getResponse()
->getContent());
}
public function testHomepageWithXML(): void
{
$client = static::createClient();
$client->request(Request::METHOD_GET, 'api/rest/source/HOMEPAGE.xml');
echo $client->getResponse()->getContent();
$this->assertEquals(200, $client->getResponse()->getStatusCode());
// $this->assertContains('<html', $client->getResponse()->getContent());
$this->client->request(Request::METHOD_GET, 'api/rest/source/HOMEPAGE.xml');
$this->assertEquals(200, $this->client->getResponse()
->getStatusCode());
$content = $this->client->getResponse()->getContent();
$xml = new \XMLReader();
$xml->XML($content);
$xml->setParserProperty(\XMLReader::VALIDATE, true);
$this->assertTrue($xml->isValid());
}
}

View File

@ -34,4 +34,15 @@ class LawTest extends TestCase
$this->assertNull($this->law->setRights($rights));
$this->assertEquals($right, $this->law->getRights()->get(0));
}
/**
* Implemented to debug where ReflectionException "Property Infinito\\Entity\\Meta\\Law::$relation does not exist" is coming from.
*/
public function testRelationNotSet(): void
{
$reflectionClass = new \ReflectionClass($this->law);
$this->assertFalse($reflectionClass->hasMethod('getRelation'));
$this->assertFalse($reflectionClass->hasMethod('setRelation'));
$this->assertFalse($reflectionClass->hasProperty('relation'));
}
}