1
0
Fork 0
mirror of synced 2024-06-29 11:40:45 +12:00
appwrite/tests/unit/Docker/ComposeTest.php
2021-04-10 15:54:03 +02:00

60 lines
1.7 KiB
PHP

<?php
namespace Appwrite\Tests;
use Appwrite\Docker\Compose;
use Exception;
use PHPUnit\Framework\TestCase;
class ComposeTest extends TestCase
{
/**
* @var Compose
*/
protected $object = null;
public function setUp(): void
{
$data = @file_get_contents(__DIR__.'/../../resources/docker/docker-compose.yml');
if ($data === false) {
throw new Exception('Failed to read compose file');
}
$this->object = new Compose($data);
}
public function tearDown(): void
{
}
public function testVersion()
{
$this->assertEquals('3', $this->object->getVersion());
}
public function testServices()
{
$this->assertCount(16, $this->object->getServices());
$this->assertEquals('appwrite-telegraf', $this->object->getService('telegraf')->getContainerName());
$this->assertEquals('appwrite', $this->object->getService('appwrite')->getContainerName());
$this->assertEquals('', $this->object->getService('appwrite')->getImageVersion());
$this->assertEquals('2.2', $this->object->getService('traefik')->getImageVersion());
$this->assertEquals(['2080' => '80', '2443' => '443', '8080' => '8080'], $this->object->getService('traefik')->getPorts());
}
public function testNetworks()
{
$this->assertCount(2, $this->object->getNetworks());
}
public function testVolumes()
{
$this->assertCount(9, $this->object->getVolumes());
$this->assertEquals('appwrite-mariadb', $this->object->getVolumes()[0]);
$this->assertEquals('appwrite-redis', $this->object->getVolumes()[1]);
$this->assertEquals('appwrite-cache', $this->object->getVolumes()[2]);
}
}