|
@@ -19,7 +19,7 @@ use chillerlan\QRCode\Output\QROutputInterface;
|
|
|
use chillerlan\Settings\SettingsContainerInterface;
|
|
use chillerlan\Settings\SettingsContainerInterface;
|
|
|
use PHPUnit\Framework\TestCase;
|
|
use PHPUnit\Framework\TestCase;
|
|
|
use Exception, Generator;
|
|
use Exception, Generator;
|
|
|
-use function range, sprintf, str_repeat, substr;
|
|
|
|
|
|
|
+use function array_map, range, sprintf, str_repeat, substr;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* Tests the QR Code reader
|
|
* Tests the QR Code reader
|
|
@@ -111,13 +111,13 @@ abstract class QRCodeReaderTestAbstract extends TestCase{
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
public function dataTestProvider():Generator{
|
|
public function dataTestProvider():Generator{
|
|
|
- $str = str_repeat($this::loremipsum, 5);
|
|
|
|
|
|
|
+ $str = str_repeat($this::loremipsum, 5);
|
|
|
|
|
+ $eccLevels = array_map(fn(int $ecc):EccLevel => new EccLevel($ecc), [EccLevel::L, EccLevel::M, EccLevel::Q, EccLevel::H]);
|
|
|
|
|
|
|
|
foreach(range(1, 40) as $v){
|
|
foreach(range(1, 40) as $v){
|
|
|
$version = new Version($v);
|
|
$version = new Version($v);
|
|
|
|
|
|
|
|
- foreach([EccLevel::L, EccLevel::M, EccLevel::Q, EccLevel::H] as $ecc){
|
|
|
|
|
- $eccLevel = new EccLevel($ecc);
|
|
|
|
|
|
|
+ foreach($eccLevels as $eccLevel){
|
|
|
$expected = substr($str, 0, $this->getMaxLengthForMode(Mode::BYTE, $version, $eccLevel) ?? '');
|
|
$expected = substr($str, 0, $this->getMaxLengthForMode(Mode::BYTE, $version, $eccLevel) ?? '');
|
|
|
|
|
|
|
|
yield 'version: '.$version.$eccLevel => [$version, $eccLevel, $expected];
|
|
yield 'version: '.$version.$eccLevel => [$version, $eccLevel, $expected];
|