@Test
  public void optionsTest() throws Exception {
    FullHttpRequest httpRequest = buildRequest(HttpMethod.OPTIONS,
        "/media/AAEAAQAAAAAAAAcUAAAAJGNjNTEzNWIwLTFmMTMtNDNhOC1hNjZjLTg3ZjU0MWZlYzM0Yw.png", new DefaultHttpHeaders(),
        ByteBuffer.wrap(TestUtils.getRandomBytes(0)));
    NettyClient.ResponseParts responseParts = nettyClient.sendRequest(httpRequest, null, null).get();
    HttpResponse response = getHttpResponse(responseParts);
    assertEquals("Unexpected response status", HttpResponseStatus.OK, response.status());
    assertFalse(response.headers().contains(RestUtils.RequestQuotaHeaders.USER_QUOTA_USAGE));
    assertFalse(response.headers().contains(RestUtils.RequestQuotaHeaders.RETRY_AFTER_MS));
    assertFalse(response.headers().contains(RestUtils.RequestQuotaHeaders.USER_QUOTA_WARNING));
  }
Tests that {@link com.github.ambry.rest.RestMethod#OPTIONS} requests are never charged.
@throws Exception
ambry-frontend/src/integration-test/java/com/github/ambry/frontend/FrontendQuotaIntegrationTest.java