Files
php-qrcode/tests/QRTestAbstract.php
T
codemasher 6eb4dd1ac3 🚿 :void
2020-03-03 07:21:12 +01:00

66 lines
1.4 KiB
PHP

<?php
/**
* Class QRTestAbstract
*
* @filesource QRTestAbstract.php
* @created 17.11.2017
* @package chillerlan\QRCodeTest
* @author Smiley <smiley@chillerlan.net>
* @copyright 2017 Smiley
* @license MIT
*/
namespace chillerlan\QRCodeTest;
use PHPUnit\Framework\TestCase;
use ReflectionClass, ReflectionMethod, ReflectionProperty;
abstract class QRTestAbstract extends TestCase{
protected ReflectionClass $reflection;
protected string $FQCN;
protected function setUp():void{
$this->reflection = new ReflectionClass($this->FQCN);
}
/**
* @param string $method
*
* @return \ReflectionMethod
*/
protected function getMethod(string $method):ReflectionMethod{
$method = $this->reflection->getMethod($method);
$method->setAccessible(true);
return $method;
}
/**
* @param string $property
*
* @return \ReflectionProperty
*/
protected function getProperty(string $property):ReflectionProperty{
$property = $this->reflection->getProperty($property);
$property->setAccessible(true);
return $property;
}
/**
* @param object $object
* @param string $property
* @param mixed $value
*
* @return void
*/
protected function setProperty($object, string $property, $value):void{
$property = $this->getProperty($property);
$property->setAccessible(true);
$property->setValue($object, $value);
}
}