1 /* 2 * $HeadURL: https://svn.apache.org/repos/asf/httpcomponents/oac.hc3x/trunk/src/test/org/apache/commons/httpclient/auth/TestChallengeParser.java $ 3 * $Revision: 1425331 $ 4 * $Date: 2012-12-22 18:29:41 +0000 (Sat, 22 Dec 2012) $ 5 * ==================================================================== 6 * 7 * Licensed to the Apache Software Foundation (ASF) under one or more 8 * contributor license agreements. See the NOTICE file distributed with 9 * this work for additional information regarding copyright ownership. 10 * The ASF licenses this file to You under the Apache License, Version 2.0 11 * (the "License"); you may not use this file except in compliance with 12 * the License. You may obtain a copy of the License at 13 * 14 * http://www.apache.org/licenses/LICENSE-2.0 15 * 16 * Unless required by applicable law or agreed to in writing, software 17 * distributed under the License is distributed on an "AS IS" BASIS, 18 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 19 * See the License for the specific language governing permissions and 20 * limitations under the License. 21 * ==================================================================== 22 * 23 * This software consists of voluntary contributions made by many 24 * individuals on behalf of the Apache Software Foundation. For more 25 * information on the Apache Software Foundation, please see 26 * <http://www.apache.org/>. 27 * 28 * [Additional notices, if required by prior licensing conditions] 29 * 30 */ 31 32 package org.apache.commons.httpclient.auth; 33 34 import junit.framework.Test; 35 import junit.framework.TestCase; 36 import junit.framework.TestSuite; 37 import java.util.Map; 38 import org.apache.commons.httpclient.auth.AuthChallengeParser; 39 import org.apache.commons.httpclient.auth.MalformedChallengeException; 40 41 /*** 42 * Unit tests for {@link AuthChallengeParser}. 43 * 44 * @author <a href="mailto:oleg@ural.ru">Oleg Kalnichevski</a> 45 */ 46 public class TestChallengeParser extends TestCase { 47 48 // ------------------------------------------------------------ Constructor 49 public TestChallengeParser(String testName) { 50 super(testName); 51 } 52 53 // ------------------------------------------------------------------- Main 54 public static void main(String args[]) { 55 String[] testCaseName = { TestChallengeParser.class.getName() }; 56 junit.textui.TestRunner.main(testCaseName); 57 } 58 59 // ------------------------------------------------------- TestCase Methods 60 61 public static Test suite() { 62 return new TestSuite(TestChallengeParser.class); 63 } 64 65 66 public void testParsingChallenge() { 67 String challenge = 68 "Basic realm=\"realm1\", test, test1 = stuff, test2 = \"stuff, stuff\", test3=\"crap"; 69 String scheme = null; 70 Map elements = null; 71 try { 72 scheme = AuthChallengeParser.extractScheme(challenge); 73 elements = AuthChallengeParser.extractParams(challenge); 74 } catch (MalformedChallengeException e) { 75 fail("Unexpected exception: " + e.toString()); 76 } 77 assertEquals("basic", scheme); 78 assertEquals("realm1", elements.get("realm")); 79 assertEquals(null, elements.get("test")); 80 assertEquals("stuff", elements.get("test1")); 81 assertEquals("stuff, stuff", elements.get("test2")); 82 assertEquals("\"crap", elements.get("test3")); 83 } 84 }