5a37c760c63eb3006d3b813da23d9175f138d6bc
[mono.git] / mcs / class / Microsoft.Web.Services / Test / Microsoft.Web.Services.Addressing / Address.cs
1 using System;\r
2 using System.Xml;\r
3 using NUnit.Framework;\r
4 using Microsoft.Web.Services.Addressing;\r
5 \r
6 namespace Microsoft.Web.Services.Addressing.Tests\r
7 {\r
8         \r
9         [TestFixture]\r
10         public class AddressTests\r
11         {\r
12                 \r
13                 [Test]\r
14                 public void CreateAddress ()\r
15                 {\r
16                         Address a = new Address (new Uri("soap.tcp://127.0.0.1/"));\r
17                         Assert.IsNotNull (a);\r
18                 }\r
19                 \r
20                 [Test]\r
21                 public void AddressToXml ()\r
22                 {\r
23                         Address a = new Address (new Uri("soap.tcp://127.0.0.1/"));\r
24                         XmlElement e = a.GetXml (new XmlDocument ());\r
25                         \r
26                         Assert.IsTrue (e.OuterXml.Length != 0);\r
27                 }\r
28                 \r
29                 [Test]\r
30                 public void XmlToAddress ()\r
31                 {\r
32                         XmlDocument doc = new XmlDocument ();\r
33                         XmlElement e = doc.CreateElement ("wsa", "Address", "http://schemas.xmlsoap.org/ws/2003/03/addressing");\r
34                         \r
35                         e.InnerText = "soap.tcp://127.0.0.1/";\r
36                         \r
37                         Address a = new Address (e);\r
38                         \r
39                         Assert.IsTrue (a.Value.AbsoluteUri == e.InnerText);\r
40                 }\r
41                 \r
42                 [Test]\r
43                 public void RoundTripFromAddress ()\r
44                 {\r
45                         Address a = new Address (new Uri("soap.tcp://127.0.0.1"));\r
46                         \r
47                         XmlElement e = a.GetXml (new XmlDocument ());\r
48                         \r
49                         Address b = new Address (e);\r
50                         \r
51                         Assert.IsTrue (a.Value.AbsoluteUri == b.Value.AbsoluteUri);\r
52                 }\r
53                 \r
54                 [Test]\r
55                 public void RoundTripFromXml ()\r
56                 {\r
57                         XmlDocument doc = new XmlDocument ();\r
58                         XmlElement e = doc.CreateElement ("wsa", "Address", "http://schemas.xmlsoap.org/ws/2003/03/addressing");\r
59                         \r
60                         e.InnerText = "soap.tcp://127.0.0.1/";\r
61                         \r
62                         Address a = new Address (e);\r
63                         \r
64                         XmlElement e2 = a.GetXml (new XmlDocument ());\r
65                         \r
66                         Assert.IsTrue (e.OuterXml == e2.OuterXml);\r
67                 }\r
68                 \r
69                 [Test]\r
70                 public void ImplicitUri ()\r
71                 {\r
72                         Uri u = new Uri ("soap.tcp://127.0.0.1/");\r
73                         \r
74                         Address a = new Address(u);\r
75                         \r
76                         Assert.IsTrue (u.AbsoluteUri == ((Uri)a).AbsoluteUri);\r
77                 }\r
78                 \r
79                 [Test]\r
80                 public void ImplicitAddress ()\r
81                 {\r
82                         Uri u = new Uri ("soap.tcp://127.0.0.1");\r
83                         \r
84                         Address a = new Address (u);\r
85                         \r
86                         Assert.AreEqual (u, (Uri)a);\r
87                 }\r
88                 \r
89                 [Test]\r
90                 [ExpectedException(typeof(ArgumentException))]\r
91                 public void InvalidArgumentException()\r
92                 {\r
93                         XmlDocument document = new XmlDocument ();\r
94                         XmlElement e = document.CreateElement ("b", "a", "d");\r
95                         \r
96                         Address a = new Address (e);\r
97                 }\r
98                 \r
99         }\r
100         \r
101 }\r