/
githubmirror
/
framework
Обзор
Документация
Войти
/
githubmirror
/
framework
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
13.x
tests/Database/DatabaseMySqlBuilderTest.php
69 строк
2 KB
Jason McCreary
[13.x] Mockery cleanup (#61117)
10 авг 2026, 20:23
Не верифицирован
10 авг 2026, 20:23
2ee40ee
Код
Авторство
О чём код?
<?php namespace Illuminate\Tests\Database; use Illuminate\Database\Connection; use Illuminate\Database\Query\Builder; use Illuminate\Database\Query\Grammars\MySqlGrammar; use Illuminate\Database\Query\Processors\Processor; use Illuminate\Database\Schema\Grammars\MySqlGrammar as MySqlGrammarSchema; use Illuminate\Database\Schema\MySqlBuilder; use Mockery; use PHPUnit\Framework\TestCase; class DatabaseMySqlBuilderTest extends TestCase { public function testCreateDatabase(): void { $connection = Mockery::mock(Connection::class); $grammar = new MySqlGrammarSchema($connection); $connection->expects('getConfig')->with('charset')->andReturn('utf8mb4'); $connection->expects('getConfig')->with('collation')->andReturn('utf8mb4_unicode_ci'); $connection->expects('getSchemaGrammar')->andReturn($grammar); $connection->expects('statement')->with( 'create database `my_temporary_database` default character set `utf8mb4` default collate `utf8mb4_unicode_ci`' )->andReturn(true); $builder = new MySqlBuilder($connection); $builder->createDatabase('my_temporary_database'); } public function testDropDatabaseIfExists() { $connection = Mockery::mock(Connection::class); $grammar = new MySqlGrammarSchema($connection); $connection->expects('getSchemaGrammar')->andReturn($grammar); $connection->expects('statement')->with( 'drop database if exists `my_database_a`' )->andReturn(true); $builder = new MySqlBuilder($connection); $builder->dropDatabaseIfExists('my_database_a'); } public function testDeleteWithJoinCompilesOrderByAndLimit(): void { $connection = Mockery::mock(Connection::class); $processor = Mockery::mock(Processor::class); $grammar = new MySqlGrammar($connection); $connection->expects('getTablePrefix')->times(5)->andReturn(''); $builder = new Builder($connection, $grammar, $processor); $builder ->from('users') ->join('contacts', 'users.id', '=', 'contacts.id') ->where('email', '=', 'foo') ->orderBy('users.id') ->limit(5); $sql = $grammar->compileDelete($builder); $this->assertStringContainsString('order by `users`.`id` asc', $sql); $this->assertStringContainsString('limit 5', $sql); } }