public function testDataProviderTestCase()
{
$this->runTests('DataTest', 'error', 'failure', false, 'grp');
$this->runTests('DataTest', 'success', 'success', true, 'grp');
$this->runTests('DataTest', 'success', 'retry', true, 'grp');
$this->assertTestSuitePosition('failure', 'DataTest', 1);
$this->assertTestSuiteResult('failure', 'DataTest', 'tests', 3);
$this->assertTestSuiteResult('failure', 'DataTest', 'failures', 0);
$this->assertTestSuiteResult('failure', 'DataTest', 'errors', 1);
$this->assertTestPosition('failure', 'DataTest::testData with data set #0', 1);
$this->assertTestPosition('failure', 'DataTest::testData with data set #1', 2);
$this->assertTestPosition('failure', 'DataTest::testData with data set #2', 3);
$this->assertTestSuitePosition('success', 'DataTest', 1);
$this->assertTestSuiteResult('success', 'DataTest', 'tests', 3);
$this->assertTestSuiteResult('success', 'DataTest', 'failures', 0);
$this->assertTestSuiteResult('success', 'DataTest', 'errors', 0);
$this->assertTestPosition('success', 'DataTest::testData with data set #1', 1);
$this->assertTestPosition('success', 'DataTest::testData with data set #0', 2);
$this->assertTestPosition('success', 'DataTest::testData with data set #2', 3);
$this->assertTestSuitePosition('retry', 'DataTest', 1);
$this->assertTestSuiteResult('retry', 'DataTest', 'tests', 3);
$this->assertTestSuiteResult('retry', 'DataTest', 'failures', 0);
$this->assertTestSuiteResult('retry', 'DataTest', 'errors', 0);
$this->assertTestPosition('retry', 'DataTest::testData with data set #1', 1);
$this->assertTestPosition('retry', 'DataTest::testData with data set #0', 2);
$this->assertTestPosition('retry', 'DataTest::testData with data set #2', 3);
}