/** * @test * * @covers \Lcobucci\JWT\Configuration * @covers \Lcobucci\JWT\Builder * @covers \Lcobucci\JWT\Token * @covers \Lcobucci\JWT\Signature * @covers \Lcobucci\JWT\Claim\Factory * @covers \Lcobucci\JWT\Claim\Basic * @covers \Lcobucci\JWT\Signer\Key * @covers \Lcobucci\JWT\Signer\BaseSigner * @covers \Lcobucci\JWT\Signer\Ecdsa * @covers \Lcobucci\JWT\Signer\Ecdsa\KeyParser * @covers \Lcobucci\JWT\Signer\Ecdsa\EccAdapter * @covers \Lcobucci\JWT\Signer\Ecdsa\SignatureSerializer * @covers \Lcobucci\JWT\Signer\Ecdsa\Sha256 */ public function everythingShouldWorkWithAKeyWithParams() { $builder = $this->config->createBuilder(); $signer = $this->config->getSigner(); $token = $builder->identifiedBy('1')->canOnlyBeUsedBy('http://client.abc.com')->issuedBy('http://api.abc.com')->with('user', ['name' => 'testing', 'email' => '*****@*****.**'])->withHeader('jki', '1234')->sign($signer, static::$ecdsaKeys['private-params'])->getToken(); self::assertTrue($token->verify($signer, static::$ecdsaKeys['public-params'])); }
/** * @test * * @covers \Lcobucci\JWT\Configuration * @covers \Lcobucci\JWT\Builder * @covers \Lcobucci\JWT\Parser * @covers \Lcobucci\JWT\Token * @covers \Lcobucci\JWT\Signature * @covers \Lcobucci\JWT\Signer\Key * @covers \Lcobucci\JWT\Signer\BaseSigner * @covers \Lcobucci\JWT\Signer\Hmac * @covers \Lcobucci\JWT\Signer\Hmac\Sha256 * @covers \Lcobucci\JWT\Claim\Factory * @covers \Lcobucci\JWT\Claim\Basic */ public function everythingShouldWorkWhenUsingATokenGeneratedByOtherLibs() { $data = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXUyJ9.eyJoZWxsbyI6IndvcmxkIn0.Rh' . '7AEgqCB7zae1PkgIlvOpeyw9Ab8NGTbeOH7heHO0o'; $token = $this->config->getParser()->parse((string) $data); self::assertEquals('world', $token->getClaim('hello')); self::assertTrue($token->verify($this->config->getSigner(), 'testing')); }
/** * @test * * @covers \Lcobucci\JWT\Configuration * @covers \Lcobucci\JWT\Builder * @covers \Lcobucci\JWT\Parser * @covers \Lcobucci\JWT\Token * @covers \Lcobucci\JWT\Signature * @covers \Lcobucci\JWT\Signer\Key * @covers \Lcobucci\JWT\Signer\BaseSigner * @covers \Lcobucci\JWT\Signer\Rsa * @covers \Lcobucci\JWT\Signer\Rsa\Sha256 * @covers \Lcobucci\JWT\Claim\Factory * @covers \Lcobucci\JWT\Claim\Basic */ public function everythingShouldWorkWhenUsingATokenGeneratedByOtherLibs() { $data = 'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXUyJ9.eyJoZWxsbyI6IndvcmxkIn0.s' . 'GYbB1KrmnESNfJ4D9hOe1Zad_BMyxdb8G4p4LNP7StYlOyBWck6q7XPpPj_6gB' . 'Bo1ohD3MA2o0HY42lNIrAStaVhfsFKGdIou8TarwMGZBPcif_3ThUV1pGS3fZc' . 'lFwF2SP7rqCngQis_xcUVCyqa8E1Wa_v28grnl1QZrnmQFO8B5JGGLqcrfUHJO' . 'nJCupP-Lqh4TmIhftIimSCgLNmJg80wyrpUEfZYReE7hPuEmY0ClTqAGIMQoNS' . '98ljwDxwhfbSuL2tAdbV4DekbTpWzspe3dOJ7RSzmPKVZ6NoezaIazKqyqkmHZfcMaHI1lQeGia6LTbHU1bp0gINi74Vw'; $token = $this->config->getParser()->parse((string) $data); self::assertEquals('world', $token->getClaim('hello')); self::assertTrue($token->verify($this->config->getSigner(), self::$rsaKeys['public'])); }
/** * @test * * @covers \Lcobucci\JWT\Configuration::getSigner * @covers \Lcobucci\JWT\Configuration::setSigner * * @uses \Lcobucci\JWT\Builder * @uses \Lcobucci\JWT\Claim\Factory * @uses \Lcobucci\JWT\Parser */ public function getSignerShouldReturnTheConfiguredSigner() { $config = new Configuration(); $config->setSigner($this->signer); self::assertSame($this->signer, $config->getSigner()); }