* @copyright Meritoo.pl */ class IncorrectClassOfResultItemExceptionTest extends BaseTestCase { public function testConstructorVisibilityAndArguments() { static::assertConstructorVisibilityAndArguments(IncorrectClassOfResultItemException::className, OopVisibilityType::IS_PUBLIC, 1, 1); } /** * @param string $className Incorrect class name used to create instance of one item * @param string $expectedMessage Expected exception's message * * @dataProvider provideIncorrectClassName */ public function testConstructorMessage($className, $expectedMessage) { $exception = new IncorrectClassOfResultItemException($className); static::assertEquals($expectedMessage, $exception->getMessage()); } /** * Provides incorrect class name used to create instance of one item * * @return array * //return Generator */ public function provideIncorrectClassName() { $template = 'Class %s used to create instance of one item of the result should extend %s, but it does not. Did' . ' you forget to use proper base class?'; return [ [ '\stdClass', sprintf($template, '\stdClass', 'Meritoo\LimeSurvey\ApiClient\Base\Result\BaseItem'), ], ]; /* yield[ stdClass::class, sprintf($template, stdClass::class, BaseItem::class), ]; */ } }