Skip to content

Commit

Permalink
Add table sort test in Postgres (#46)
Browse files Browse the repository at this point in the history
  • Loading branch information
msmakouz authored Mar 10, 2023
1 parent 16119e3 commit 351e0be
Showing 1 changed file with 34 additions and 0 deletions.
34 changes: 34 additions & 0 deletions tests/Migrations/Postgres/ComplexAtomizerTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,38 @@
class ComplexAtomizerTest extends \Cycle\Migrations\Tests\ComplexAtomizerTest
{
public const DRIVER = 'postgres';

public function testTableSorting(): void
{
$this->migrator->configure();

$schema = $this->schema('messages');
$schema->primary('id');
$schema->integer('user_id');
$schema->integer('thread_id');
$schema->foreignKey(['thread_id'])->references('threads', ['id']);
$schema->foreignKey(['user_id'])->references('users', ['id']);

$schema1 = $this->schema('users');
$schema1->primary('id');

$schema2 = $this->schema('threads');
$schema2->primary('id');

$this->atomize('migration1', [$schema, $schema1, $schema2]);
$this->migrator->run();

$this->assertTrue($this->db->hasTable('messages'));
$this->assertTrue($this->db->table('messages')->hasForeignKey(['thread_id']));
$this->assertTrue($this->db->table('messages')->hasForeignKey(['user_id']));

$this->assertTrue($this->db->hasTable('users'));
$this->assertTrue($this->db->hasTable('threads'));

$this->migrator->rollback();

$this->assertFalse($this->db->hasTable('messages'));
$this->assertFalse($this->db->hasTable('users'));
$this->assertFalse($this->db->hasTable('threads'));
}
}

0 comments on commit 351e0be

Please sign in to comment.