Тестирование базы данных PHPUnit.Светильники не установлены? - PullRequest
3 голосов
/ 13 июля 2011

это сообщение было обновлено 17 июля 13:35 UTC + 8

У меня есть что-то вроде

require_once 'PHPUnit/Extensions/Database/TestCase.php';

class TestTest extends PHPUnit_Extensions_Database_TestCase {
    public function getConnection() {
        $pdo = new \PDO('mysql:host=localhost;dbname=jm_test', 'root', 'jm123');
        return $this->createDefaultDBConnection($pdo, 'jm_test');
    }   

    public function getDataSet() {
        return $this->createXMLDataSet(TEST_DIR . '/Fixtures/test.xml');
    }

    public function testRowCount() {
        $this->assertGreaterThan(0, $this->getConnection()->getRowCount('test'));
    }
}

Светильник (test.xml)

<?xml version="1.0" encoding="UTF-8"?>
<dataset>
    <table name="test">
        <column>id</column>
        <column>key</column>
        <column>value</column>
    </table>
    <row>
        <value>1</value>
        <value>Key 1</value>
        <value>Value 1</value>
    </row>
    ...
</dataset>

Я всегда получаю количество строк 0, почему это так?

1 Ответ

2 голосов
/ 18 июля 2011

Я нашел свою ошибку: мне нужно переместить элемент <row> внутрь элемента <table>

<?xml version="1.0" encoding="UTF-8"?>
<dataset>
    <table name="test">
        <column>id</column>
        <column>key</column>
        <column>value</column>
        <row>
            <value>1</value>
            <value>Key 1</value>
            <value>Value 1</value>
        </row>
        ...
    </table>
</dataset>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...