<?php use \ParagonIE\ConstantTime\Base64DotSlashOrdered; class Base64DotSlashOrderedTest extends PHPUnit\Framework\TestCase { /** * @covers Base64DotSlashOrdered::encode() * @covers Base64DotSlashOrdered::decode() */ public function testRandom() { for ($i = 1; $i < 32; ++$i) { for ($j = 0; $j < 50; ++$j) { $random = \random_bytes($i); $enc = Base64DotSlashOrdered::encode($random); $this->assertSame( $random, Base64DotSlashOrdered::decode($enc) ); $unpadded = \rtrim($enc, '='); $this->assertSame( $random, Base64DotSlashOrdered::decode($unpadded) ); $this->assertSame( $random, Base64DotSlashOrdered::decode($unpadded) ); } } } }