From d71fbb3a1adfbd99c1cb45929ff24b879c8cf846 Mon Sep 17 00:00:00 2001 From: Noah Levitt Date: Thu, 26 Jul 2012 18:45:29 -0700 Subject: [PATCH] stick a basic auth 401 in the middle of testDigestAuth to check it doesn't mess with the digest auth we're working on --- .../apache/commons/httpclient/HttpMethodBase.java | 2 +- .../main/java/org/archive/state/ModuleTestBase.java | 13 +++++++++++++ .../archive/modules/fetcher/FetchHTTPTestBase.java | 11 ++++++++--- 3 files changed, 22 insertions(+), 4 deletions(-) diff --git a/commons/src/main/java/org/apache/commons/httpclient/HttpMethodBase.java b/commons/src/main/java/org/apache/commons/httpclient/HttpMethodBase.java index cda1b9d2..edf4f8c1 100644 --- a/commons/src/main/java/org/apache/commons/httpclient/HttpMethodBase.java +++ b/commons/src/main/java/org/apache/commons/httpclient/HttpMethodBase.java @@ -386,11 +386,11 @@ public abstract class HttpMethodBase implements HttpMethod { * @param header the header to add to the request */ public void addRequestHeader(Header header) { - LOG.trace("HttpMethodBase.addRequestHeader(Header)"); if (header == null) { LOG.debug("null header value ignored"); } else { + LOG.trace("HttpMethodBase.addRequestHeader(" + header.toString().trim() + ")"); getRequestHeaderGroup().addHeader(header); } } diff --git a/commons/src/main/java/org/archive/state/ModuleTestBase.java b/commons/src/main/java/org/archive/state/ModuleTestBase.java index 90e167c4..018b5888 100644 --- a/commons/src/main/java/org/archive/state/ModuleTestBase.java +++ b/commons/src/main/java/org/archive/state/ModuleTestBase.java @@ -22,10 +22,13 @@ package org.archive.state; import java.io.File; import java.io.Serializable; import java.util.Arrays; +import java.util.logging.Level; +import java.util.logging.Logger; import junit.framework.TestCase; import org.apache.commons.lang.SerializationUtils; +import org.archive.modules.fetcher.FetchHTTPTestBase; /** @@ -35,6 +38,7 @@ import org.apache.commons.lang.SerializationUtils; */ public abstract class ModuleTestBase extends TestCase { + private static Logger logger = Logger.getLogger(ModuleTestBase.class.getName()); /** * Magical constructor that attempts to auto-create static key field @@ -203,4 +207,13 @@ public abstract class ModuleTestBase extends TestCase { Object second, byte[] secondBytes) throws Exception { assertTrue(Arrays.equals(firstBytes, secondBytes)); } + + @Override + protected void runTest() throws Throwable { + try { + super.runTest(); + } catch (Throwable t) { + logger.log(Level.SEVERE, "", t); + } + } } diff --git a/modules/src/test/java/org/archive/modules/fetcher/FetchHTTPTestBase.java b/modules/src/test/java/org/archive/modules/fetcher/FetchHTTPTestBase.java index 77f15f53..e0723ea9 100644 --- a/modules/src/test/java/org/archive/modules/fetcher/FetchHTTPTestBase.java +++ b/modules/src/test/java/org/archive/modules/fetcher/FetchHTTPTestBase.java @@ -377,11 +377,16 @@ public abstract class FetchHTTPTestBase extends ProcessorTestBase { // check that we got the expected response and the fetcher did its thing assertEquals(401, curi.getFetchStatus()); assertTrue(curi.getCredentials().contains(digestAuthCred)); - - // fetch again with the credentials + + // stick a basic auth 401 in there to check it doesn't mess with the digest auth we're working on + CrawlURI inteferingUri = makeCrawlURI("http://localhost:7777/auth/basic"); + getFetcher().process(inteferingUri); + assertEquals(401, inteferingUri.getFetchStatus()); + + // fetch origin again with the credentials getFetcher().process(curi); String httpRequestString = httpRequestString(curi); - // logger.info('\n' + httpRequestString + contentString(curi)); + logger.info('\n' + httpRequestString + contentString(curi)); assertTrue(httpRequestString.contains("Authorization: Digest")); // otherwise should be a normal 200 response runDefaultChecks(curi, new HashSet(Arrays.asList("requestLine", "hostHeader")));