KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > dom4j > xpath > UriMapTest


1 /*
2  * Copyright 2001-2005 (C) MetaStuff, Ltd. All Rights Reserved.
3  *
4  * This software is open source.
5  * See the bottom of this file for the licence.
6  */

7
8 package org.dom4j.xpath;
9
10 import junit.textui.TestRunner;
11
12 import java.io.File JavaDoc;
13 import java.util.HashMap JavaDoc;
14 import java.util.Map JavaDoc;
15
16 import org.dom4j.AbstractTestCase;
17 import org.dom4j.Node;
18 import org.dom4j.XPath;
19 import org.dom4j.io.SAXReader;
20
21 /**
22  * Tests the use of a Map for defining namespace URIs
23  *
24  * @author <a HREF="mailto:jstrachan@apache.org">James Strachan </a>
25  * @version $Revision: 1.3 $
26  */

27 public class UriMapTest extends AbstractTestCase {
28     public static void main(String JavaDoc[] args) {
29         TestRunner.run(UriMapTest.class);
30     }
31
32     // Test case(s)
33
// -------------------------------------------------------------------------
34
public void testURIMap() throws Exception JavaDoc {
35         Map JavaDoc uris = new HashMap JavaDoc();
36         uris.put("SOAP-ENV", "http://schemas.xmlsoap.org/soap/envelope/");
37         uris.put("m", "urn:xmethodsBabelFish");
38
39         String JavaDoc path = "/SOAP-ENV:Envelope/SOAP-ENV:Body/m:BabelFish";
40         XPath xpath = document.createXPath(path);
41         xpath.setNamespaceURIs(uris);
42
43         Node babelfish = xpath.selectSingleNode(document);
44
45         // log( "Found: " + babelfish );
46
assertTrue("Found valid node", babelfish != null);
47     }
48
49     protected void setUp() throws Exception JavaDoc {
50         super.setUp();
51         document = new SAXReader().read(new File JavaDoc("xml/soap.xml"));
52     }
53 }
54
55 /*
56  * Redistribution and use of this software and associated documentation
57  * ("Software"), with or without modification, are permitted provided that the
58  * following conditions are met:
59  *
60  * 1. Redistributions of source code must retain copyright statements and
61  * notices. Redistributions must also contain a copy of this document.
62  *
63  * 2. Redistributions in binary form must reproduce the above copyright notice,
64  * this list of conditions and the following disclaimer in the documentation
65  * and/or other materials provided with the distribution.
66  *
67  * 3. The name "DOM4J" must not be used to endorse or promote products derived
68  * from this Software without prior written permission of MetaStuff, Ltd. For
69  * written permission, please contact dom4j-info@metastuff.com.
70  *
71  * 4. Products derived from this Software may not be called "DOM4J" nor may
72  * "DOM4J" appear in their names without prior written permission of MetaStuff,
73  * Ltd. DOM4J is a registered trademark of MetaStuff, Ltd.
74  *
75  * 5. Due credit should be given to the DOM4J Project - http://www.dom4j.org
76  *
77  * THIS SOFTWARE IS PROVIDED BY METASTUFF, LTD. AND CONTRIBUTORS ``AS IS'' AND
78  * ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
79  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
80  * ARE DISCLAIMED. IN NO EVENT SHALL METASTUFF, LTD. OR ITS CONTRIBUTORS BE
81  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
82  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
83  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
84  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
85  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
86  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
87  * POSSIBILITY OF SUCH DAMAGE.
88  *
89  * Copyright 2001-2005 (C) MetaStuff, Ltd. All Rights Reserved.
90  */

91
Popular Tags