:octocat: re-introduce QRMatrix::flip() (6c66d56a31) as bitmask rework (#205) won't happen any time soon

This commit is contained in:
smiley
2023-09-08 21:13:08 +02:00
parent 81ef065af8
commit 85776d2db9
2 changed files with 34 additions and 2 deletions
+20
View File
@@ -518,6 +518,26 @@ final class QRMatrixTest extends TestCase{
(new QRCode($o))->addByteSegment('testdata')->getQRMatrix()->setLogoSpace(37, 37);
}
/**
* Tests flipping the value of a module
*/
public function testFlip():void{
$this->matrix->set(20, 20, true, QRMatrix::M_TEST);
// cover checkType()
$this::assertTrue($this->matrix->checkType(20, 20, QRMatrix::M_TEST));
// verify the current state (dark)
$this::assertSame(QRMatrix::M_TEST_DARK, $this->matrix->get(20, 20));
// flip
$this->matrix->flip(20, 20);
// verify flip
$this::assertSame(QRMatrix::M_TEST, $this->matrix->get(20, 20));
// flip again
$this->matrix->flip(20, 20);
// verify flip
$this::assertSame(QRMatrix::M_TEST_DARK, $this->matrix->get(20, 20));
}
/**
* Tests checking whether the M_TYPE of a module is not one of an array of M_TYPES
*/