12345678910111213141516171819202122232425262728293031323334353637 |
- <?php
- namespace Namshi\JOSE\Test;
- use Namshi\JOSE\Base64\Base64Encoder;
- use Namshi\JOSE\JWS;
- use PHPUnit_Framework_TestCase as TestCase;
- /**
- * BC test for base64 url-safe fix
- * Test that tokens generated the old way (non url-safe) will work with url-safe base64 decoding.
- */
- class BCJWSTest extends TestCase
- {
- const SSL_KEY_PASSPHRASE = 'tests';
- public function testTestBC()
- {
- $data = array(
- array('order_nr' => 'ae123123'),
- array('username' => 'asdasdasd'),
- array('anything' => '!@#$%^&*()_+'),
- );
- foreach ($data as $payload) {
- $jwsOld = new JWS(array('alg' => 'RS256'));
- $jwsOld->setEncoder(new Base64Encoder());
- $jwsOld->setPayload($payload);
- $jwsOld->sign(openssl_pkey_get_private(SSL_KEYS_PATH.'private.key', self::SSL_KEY_PASSPHRASE));
- $t = $jwsOld->getTokenString();
- $jwsNew = JWS::load($t);
- $this->assertTrue($jwsNew->verify(openssl_pkey_get_public(SSL_KEYS_PATH.'public.key')));
- }
- }
- }
|