1
2
3
4
5
6
7 package org.mule.config.spring.editors;
8
9 import org.mule.tck.junit4.AbstractMuleTestCase;
10
11 import javax.xml.namespace.QName;
12
13 import org.junit.Test;
14
15 import static org.junit.Assert.assertEquals;
16 import static org.junit.Assert.assertNotNull;
17
18 public class QNamePropertyEditorTestCase extends AbstractMuleTestCase
19 {
20
21 @Test
22 public void testFullQNameString()
23 {
24 QName name = QNamePropertyEditor.convert("qname{e:echo:http://muleumo.org/echo}");
25 assertNotNull(name);
26 assertEquals("e", name.getPrefix());
27 assertEquals("echo", name.getLocalPart());
28 assertEquals("http://muleumo.org/echo", name.getNamespaceURI());
29 }
30
31 @Test
32 public void testFullQNameStringWithColonsInNamespace()
33 {
34 QName name = QNamePropertyEditor.convert("qname{e:echo:urn:muleumo:echo}");
35 assertNotNull(name);
36 assertEquals("e", name.getPrefix());
37 assertEquals("echo", name.getLocalPart());
38 assertEquals("urn:muleumo:echo", name.getNamespaceURI());
39 }
40
41 @Test
42 public void testNameAndNamespace()
43 {
44 QName name = QNamePropertyEditor.convert("qname{echo:http://muleumo.org/echo}");
45 assertNotNull(name);
46 assertEquals("http://muleumo.org/echo", name.getNamespaceURI());
47 assertEquals("echo", name.getLocalPart());
48 assertEquals("", name.getPrefix());
49 }
50
51 @Test
52 public void testNameOnly()
53 {
54 QName name = QNamePropertyEditor.convert("qname{echo}");
55 assertNotNull(name);
56 assertEquals("", name.getNamespaceURI());
57 assertEquals("echo", name.getLocalPart());
58 assertEquals("", name.getPrefix());
59 }
60
61 @Test
62 public void testNameOnlyWithoutBraces()
63 {
64 QName name = QNamePropertyEditor.convert("echo");
65 assertNotNull(name);
66 assertEquals("", name.getNamespaceURI());
67 assertEquals("echo", name.getLocalPart());
68 assertEquals("", name.getPrefix());
69 }
70
71 }