// Path: oauth2_http/java/com/google/auth/http/AuthHttpConstants.java
// public class AuthHttpConstants {
//   /** HTTP "Bearer" authentication scheme */
//   public static final String BEARER = "Bearer";
// 
//   /** HTTP "Authentication" header */
//   public static final String AUTHORIZATION = "Authorization";
// }


import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertNull;
import static org.junit.jupiter.api.Assertions.assertSame;
import static org.junit.jupiter.api.Assertions.assertThrows;
import com.google.api.client.json.JsonFactory;
import com.google.api.client.json.gson.GsonFactory;
import com.google.api.client.json.webtoken.JsonWebSignature;
import com.google.api.client.util.Clock;
import com.google.auth.http.AuthHttpConstants;
import java.io.IOException;
import java.security.PrivateKey;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import org.junit.jupiter.api.Test;

    Map<String, List<String>> metadata = credentials.getRequestMetadata();
    verifyJwtAccess(metadata, "some-audience", "some-issuer", "some-subject", null);
  }

  private void verifyJwtAccess(
      Map<String, List<String>> metadata,
      String expectedAudience,
      String expectedIssuer,
      String expectedSubject,
      String expectedKeyId)
      throws IOException {
    verifyJwtAccess(
        metadata,
        expectedAudience,
        expectedIssuer,
        expectedSubject,
        expectedKeyId,
        Collections.emptyMap());
  }

  private void verifyJwtAccess(
      Map<String, List<String>> metadata,
      String expectedAudience,
      String expectedIssuer,
      String expectedSubject,
      String expectedKeyId,
      Map<String, String> expectedAdditionalClaims)
      throws IOException {
    assertNotNull(metadata);
// Path: oauth2_http/java/com/google/auth/http/AuthHttpConstants.java
// public class AuthHttpConstants {
//   /** HTTP "Bearer" authentication scheme */
//   public static final String BEARER = "Bearer";
// 
//   /** HTTP "Authentication" header */
//   public static final String AUTHORIZATION = "Authorization";
// }


// Path: oauth2_http/javatests/com/google/auth/oauth2/JwtCredentialsTest.java
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertNull;
import static org.junit.jupiter.api.Assertions.assertSame;
import static org.junit.jupiter.api.Assertions.assertThrows;
import com.google.api.client.json.JsonFactory;
import com.google.api.client.json.gson.GsonFactory;
import com.google.api.client.json.webtoken.JsonWebSignature;
import com.google.api.client.util.Clock;
import com.google.auth.http.AuthHttpConstants;
import java.io.IOException;
import java.security.PrivateKey;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import org.junit.jupiter.api.Test;


    Map<String, List<String>> metadata = credentials.getRequestMetadata();
    verifyJwtAccess(metadata, "some-audience", "some-issuer", "some-subject", null);
  }

  private void verifyJwtAccess(
      Map<String, List<String>> metadata,
      String expectedAudience,
      String expectedIssuer,
      String expectedSubject,
      String expectedKeyId)
      throws IOException {
    verifyJwtAccess(
        metadata,
        expectedAudience,
        expectedIssuer,
        expectedSubject,
        expectedKeyId,
        Collections.emptyMap());
  }

  private void verifyJwtAccess(
      Map<String, List<String>> metadata,
      String expectedAudience,
      String expectedIssuer,
      String expectedSubject,
      String expectedKeyId,
      Map<String, String> expectedAdditionalClaims)
      throws IOException {
    assertNotNull(metadata);
    List<String> authorizations = metadata.get(AuthHttpConstants.AUTHORIZATION);