1
0
Fork 0
mirror of synced 2024-08-04 13:01:45 +12:00
appwrite/tests/unit/Utopia/Database/Validator/Queries/CollectionTest.php
2024-01-09 15:21:43 +13:00

44 lines
1.5 KiB
PHP

<?php
namespace Tests\Unit\Utopia\Database\Validator\Queries;
use Appwrite\Utopia\Database\Validator\Queries\Base;
use PHPUnit\Framework\TestCase;
use Utopia\Database\Document;
use Utopia\Database\Query;
class CollectionTest extends TestCase
{
public function setUp(): void
{
}
public function tearDown(): void
{
}
public function testEmptyQueries(): void
{
$validator = new Base('users', []);
$this->assertEquals($validator->isValid([]), true);
}
public function testValid(): void
{
$validator = new Base('users', ['name', 'search']);
$this->assertEquals(true, $validator->isValid([Query::cursorAfter(new Document(['$id' => 'asdf']))]), $validator->getDescription());
$this->assertEquals(true, $validator->isValid([Query::equal('name', ['value'])]), $validator->getDescription());
$this->assertEquals(true, $validator->isValid([Query::limit(10)]), $validator->getDescription());
$this->assertEquals(true, $validator->isValid([Query::offset(10)]), $validator->getDescription());
$this->assertEquals(true, $validator->isValid([Query::orderAsc('name')]), $validator->getDescription());
}
public function testMissingIndex(): void
{
$validator = new Base('users', ['name']);
$this->assertEquals(false, $validator->isValid([Query::equal('dne', ['value'])]), $validator->getDescription());
$this->assertEquals(false, $validator->isValid([Query::orderAsc('dne')]), $validator->getDescription());
}
}