diff options
Diffstat (limited to 'vendor/paragonie/constant_time_encoding/tests/Base64DotSlashTest.php')
-rw-r--r-- | vendor/paragonie/constant_time_encoding/tests/Base64DotSlashTest.php | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/vendor/paragonie/constant_time_encoding/tests/Base64DotSlashTest.php b/vendor/paragonie/constant_time_encoding/tests/Base64DotSlashTest.php new file mode 100644 index 000000000..257a3d549 --- /dev/null +++ b/vendor/paragonie/constant_time_encoding/tests/Base64DotSlashTest.php @@ -0,0 +1,34 @@ +<?php +use \ParagonIE\ConstantTime\Base64DotSlash; + +class Base64DotSlashTest extends PHPUnit\Framework\TestCase +{ + /** + * @covers Base64DotSlash::encode() + * @covers Base64DotSlash::decode() + */ + public function testRandom() + { + for ($i = 1; $i < 32; ++$i) { + for ($j = 0; $j < 50; ++$j) { + $random = \random_bytes($i); + + $enc = Base64DotSlash::encode($random); + $this->assertSame( + $random, + Base64DotSlash::decode($enc) + ); + + $unpadded = \rtrim($enc, '='); + $this->assertSame( + $random, + Base64DotSlash::decode($unpadded) + ); + $this->assertSame( + $random, + Base64DotSlash::decode($unpadded) + ); + } + } + } +} |