servercontrol/tests/Unit/ServerTest.php

55 lines
1.6 KiB
PHP

<?php
namespace App\Tests\Unit;
use App\Entity\Server;
use App\Entity\User;
use PHPUnit\Framework\TestCase;
class ServerTest extends TestCase
{
public function testServerDefaultStatus(): void
{
$server = new Server();
$this->assertEquals('unknown', $server->getLastStatus());
}
public function testServerDefaultPort(): void
{
$server = new Server();
$this->assertEquals(22, $server->getSshPort());
}
public function testServerSettersAndGetters(): void
{
$server = new Server();
$server->setName('Test Server');
$server->setIpAddress('192.168.1.1');
$server->setSshPort(2222);
$server->setSshUser('admin');
$server->setSshPassword('pass123');
$server->setLastStatus('online');
$this->assertEquals('Test Server', $server->getName());
$this->assertEquals('192.168.1.1', $server->getIpAddress());
$this->assertEquals(2222, $server->getSshPort());
$this->assertEquals('admin', $server->getSshUser());
$this->assertEquals('online', $server->getLastStatus());
}
public function testServerOwnerRelation(): void
{
$server = new Server();
$user = new User();
$user->setEmail('owner@test.com')->setPseudo('Owner');
$server->setOwner($user);
$this->assertSame($user, $server->getOwner());
}
public function testServerCreatedAtIsSetOnConstruct(): void
{
$server = new Server();
$this->assertInstanceOf(\DateTimeImmutable::class, $server->getCreatedAt());
}
}