不能在@dataProvider PHPUnit 中 return 个对象
Cannot return objects in @dataProvider PHPUnit
是否允许 return 来自 @dataProviders
的对象测试方法?
public function iOsMessages()
{
return [
'update available' => [1, new UpToDateMessage(), 'pl'],
];
}
/**
* @test
* @dataProvider iOsMessages
*/
public function success_create_message_for_ios(int $appVersion, MobileMessage $message, string $locale)
{
(...)
错误:
The data provider specified for Tests\Tests\Mobile\Classes\AppVersionTest::success_create_message_for_ios is invalid.
Class 'Mobile\Classes\Messages\UpToDateMessage' not found
MobileMessage
是一个接口,导入是正确的。
A data provider method must be public and either return an array of arrays or an object that implements the Iterator interface and yields an array for each iteration step.
是否允许 return 来自 @dataProviders
的对象测试方法?
public function iOsMessages()
{
return [
'update available' => [1, new UpToDateMessage(), 'pl'],
];
}
/**
* @test
* @dataProvider iOsMessages
*/
public function success_create_message_for_ios(int $appVersion, MobileMessage $message, string $locale)
{
(...)
错误:
The data provider specified for Tests\Tests\Mobile\Classes\AppVersionTest::success_create_message_for_ios is invalid. Class 'Mobile\Classes\Messages\UpToDateMessage' not found
MobileMessage
是一个接口,导入是正确的。
A data provider method must be public and either return an array of arrays or an object that implements the Iterator interface and yields an array for each iteration step.