matthiasnoback/doctrine-dbal-test-service-provider

为需要Doctrine DBAL连接的测试提供的服务器

v3.2.1 2020-12-10 18:44 UTC

This package is auto-updated.

Last update: 2024-09-11 02:09:08 UTC


README

Build Status

此库包含一个与PHPUnit测试服务容器一起使用的服务提供者。

用法

在您的测试类中使用特性 Noback\PHPUnitTestServiceContainer\PHPUnit\TestCaseWithDoctrineDbalConnection。然后您需要实现 createSchema() 并返回一个 Doctrine\DBAL\Schema\Schema 实例。

对于每个测试方法,将提供一个数据库连接(实例为 Doctrine\DBAL\Connection)。此外,由 createSchema() 返回的模式将在数据库中创建。数据库本身(默认情况下)是一个SQLite内存数据库,这将在文件系统中留下痕迹。

<?php

use Noback\PHPUnitTestServiceContainer\PHPUnit\TestCaseWithDoctrineDbalConnection;
use Doctrine\DBAL\Schema\Schema;

final class StorageTest
{
    use TestCaseWithDoctrineDbalConnection;
    
    /**
     * @test
     */
    public function something()
    {
        $connection = $this->getConnection();

        $connection->insert('some_table', array('some_column' => 'value'));

        ...
    }

    protected function createSchema()
    {
        $schema = new Schema();

        $table = $schema->createTable('some_table');

        $table->addColumn('some_column', 'string');

        return $schema;
    }
}

阅读更多