php-kilo/tests/EditorTest.php

40 lines
785 B
PHP

<?php declare(strict_types=1);
namespace Aviat\Kilo\Tests\Traits;
use Aviat\Kilo\Editor;
use PHPUnit\Framework\TestCase;
use Spatie\Snapshots\MatchesSnapshots;
class EditorTest extends TestCase {
use MatchesSnapshots;
protected Editor $editor;
public function setUp(): void
{
parent::setUp();
$this->editor = Editor::new();
}
public function testSanity(): void
{
$this->assertEquals(0, $this->editor->numRows);
$this->assertNull($this->editor->syntax);
}
public function test__debugInfo(): void
{
$state = json_encode($this->editor->__debugInfo());
$this->assertMatchesJsonSnapshot($state);
}
public function testOpen(): void
{
$this->editor->open('test.php');
$state = json_encode($this->editor);
$this->assertMatchesJsonSnapshot($state);
}
}