1
0
Fork 0
mirror of synced 2024-07-01 12:40:34 +12:00
appwrite/tests/unit/Migration/MigrationTest.php

53 lines
1.2 KiB
PHP
Raw Normal View History

<?php
namespace Appwrite\Tests;
use Appwrite\Database\Document;
use Appwrite\Migration\Migration;
use PHPUnit\Framework\TestCase;
use ReflectionMethod;
abstract class MigrationTest extends TestCase
{
/**
* @var PDO
*/
protected \PDO $pdo;
/**
* @var Migration
*/
protected Migration $migration;
/**
* @var ReflectionMethod
*/
protected ReflectionMethod $method;
/**
* Runs every document fix twice, to prevent corrupted data on multiple migrations.
*
* @param Document $document
*/
protected function fixDocument(Document $document)
{
return $this->method->invokeArgs($this->migration, [
$this->method->invokeArgs($this->migration, [$document])
]);
}
2021-07-02 21:33:10 +12:00
/**
* Check versions array integrity.
*/
public function testMigrationVersions()
{
require_once __DIR__.'/../../../app/init.php';
foreach (Migration::$versions as $version => $class) {
$this->assertTrue(class_exists('Appwrite\\Migration\\Version\\'.$class));
}
// Test if current version exists
$this->assertArrayHasKey(APP_VERSION_STABLE, Migration::$versions);
}
}