SqlServerBuilderTest.php 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?php
  2. namespace Illuminate\Tests\Database;
  3. use Illuminate\Database\Connection;
  4. use Illuminate\Database\Schema\Grammars\SqlServerGrammar;
  5. use Illuminate\Database\Schema\SqlServerBuilder;
  6. use Mockery as m;
  7. use PHPUnit\Framework\TestCase;
  8. class SqlServerBuilderTest extends TestCase
  9. {
  10. protected function tearDown(): void
  11. {
  12. m::close();
  13. }
  14. public function testCreateDatabase()
  15. {
  16. $grammar = new SqlServerGrammar;
  17. $connection = m::mock(Connection::class);
  18. $connection->shouldReceive('getSchemaGrammar')->once()->andReturn($grammar);
  19. $connection->shouldReceive('statement')->once()->with(
  20. 'create database "my_temporary_database_a"'
  21. )->andReturn(true);
  22. $builder = new SqlServerBuilder($connection);
  23. $builder->createDatabase('my_temporary_database_a');
  24. }
  25. public function testDropDatabaseIfExists()
  26. {
  27. $grammar = new SqlServerGrammar;
  28. $connection = m::mock(Connection::class);
  29. $connection->shouldReceive('getSchemaGrammar')->once()->andReturn($grammar);
  30. $connection->shouldReceive('statement')->once()->with(
  31. 'drop database if exists "my_temporary_database_b"'
  32. )->andReturn(true);
  33. $builder = new SqlServerBuilder($connection);
  34. $builder->dropDatabaseIfExists('my_temporary_database_b');
  35. }
  36. }