public Jwt convertJwtRecordToJwt(JwtRecord jwtRecord) {
        return new Jwt(
                jwtRecord.tokenValue(),
                jwtRecord.issuedAt(),
                jwtRecord.expiresAt(),
                jwtRecord.headers(),
                jwtRecord.claims()
        );
    }
@Test
    void givenJwtRecord_whenConvertJwtRecordToJwt_thenCorrectlyConverted() {

        // Given
        JwtRecord jwtRecord = new JwtRecord(
                "tokenValue",
                Map.of("alg", "RS256", "typ", "JWT"),
                Map.of("sub", "user123", "iss", "issuer", "aud", "audience"),
                Instant.now(),
                Instant.now().plusSeconds(3600),
                "user123",
                "issuer",
                "audience"
        );

        // When
        Jwt jwt = JwtRecordConverter.convertJwtRecordToJwt(jwtRecord);

        // Then
        assertThat(jwt).isNotNull();
        assertThat(jwt.getTokenValue()).isEqualTo("tokenValue");
        assertThat(jwt.getHeaders()).isEqualTo(jwtRecord.headers());
        assertThat(jwt.getClaims()).isEqualTo(jwtRecord.claims());
        assertThat(jwt.getIssuedAt()).isEqualTo(jwtRecord.issuedAt());
        assertThat(jwt.getExpiresAt()).isEqualTo(jwtRecord.expiresAt());
        assertThat(jwt.getClaimAsString("sub")).isEqualTo("user123");
        assertThat(jwt.getClaimAsString("iss")).isEqualTo("issuer");
        assertThat(jwt.getAudience()).contains("audience");

    }