public function testTokenWithNotEncodedSecret() { $client_id = 'client_id_1'; $client_secret = 'client_secret_1'; $generator = new TokenGenerator(['client_id' => $client_id, 'client_secret' => $client_secret, 'secret_base64_encoded' => false]); $jwt = $generator->generate(['users' => ['actions' => ['read']]]); $verifier = new JWTVerifier(['valid_audiences' => [$client_id], 'client_secret' => $client_secret, 'secret_base64_encoded' => false]); $decoded = $verifier->verifyAndDecode($jwt); $this->assertObjectHasAttribute('aud', $decoded); $this->assertEquals($client_id, $decoded->aud); $this->assertObjectHasAttribute('scopes', $decoded); $this->assertObjectHasAttribute('users', $decoded->scopes); $this->assertObjectHasAttribute('actions', $decoded->scopes->users); $this->assertArraySubset(['read'], $decoded->scopes->users->actions); }