@SmallTest public void testDoNotMakeRequestForFaviconAfter404() throws Throwable { mWebServer.setResponseWithNotFoundStatus(FAVICON1_URL); final String pageUrl = mWebServer.setResponse( FAVICON1_PAGE_URL, FAVICON1_PAGE_HTML, CommonResources.getTextHtmlHeaders(true)); loadUrlSync(mAwContents, mContentsClient.getOnPageFinishedHelper(), pageUrl); poll( new Callable<Boolean>() { @Override public Boolean call() throws Exception { return mWebServer.getRequestCount(FAVICON1_URL) == 1; } }); // Make sure the request counter for favicon is not incremented, since we already got 404. loadUrlSync(mAwContents, mContentsClient.getOnPageFinishedHelper(), pageUrl); // If a request hasn't been done within this time period, we assume it won't be done. Thread.sleep(MAX_REQUEST_WAITING_LIMIT_MS); assertEquals(1, mWebServer.getRequestCount(FAVICON1_URL)); }