1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 package org.apache.commons.httpclient.auth;
32
33 import junit.framework.Test;
34 import junit.framework.TestCase;
35 import junit.framework.TestSuite;
36 import java.util.Map;
37 import org.apache.commons.httpclient.auth.AuthChallengeParser;
38 import org.apache.commons.httpclient.auth.MalformedChallengeException;
39
40 /***
41 * Unit tests for {@link AuthChallengeParser}.
42 *
43 * @author <a href="mailto:oleg@ural.ru">Oleg Kalnichevski</a>
44 */
45 public class TestChallengeParser extends TestCase {
46
47
48 public TestChallengeParser(String testName) {
49 super(testName);
50 }
51
52
53 public static void main(String args[]) {
54 String[] testCaseName = { TestChallengeParser.class.getName() };
55 junit.textui.TestRunner.main(testCaseName);
56 }
57
58
59
60 public static Test suite() {
61 return new TestSuite(TestChallengeParser.class);
62 }
63
64
65 public void testParsingChallenge() {
66 String challenge =
67 "Basic realm=\"realm1\", test, test1 = stuff, test2 = \"stuff, stuff\", test3=\"crap";
68 String scheme = null;
69 Map elements = null;
70 try {
71 scheme = AuthChallengeParser.extractScheme(challenge);
72 elements = AuthChallengeParser.extractParams(challenge);
73 } catch (MalformedChallengeException e) {
74 fail("Unexpected exception: " + e.toString());
75 }
76 assertEquals("basic", scheme);
77 assertEquals("realm1", elements.get("realm"));
78 assertEquals(null, elements.get("test"));
79 assertEquals("stuff", elements.get("test1"));
80 assertEquals("stuff, stuff", elements.get("test2"));
81 assertEquals("\"crap", elements.get("test3"));
82 }
83 }