2 // IPEndPointTest.cs - NUnit Test Cases for System.Net.IPEndPoint
5 // Lawrence Pit (loz@cable.a2000.nl)
6 // Martin Willemoes Hansen (mwh@sysrq.dk)
8 // (C) 2003 Martin Willemoes Hansen
11 using NUnit.Framework;
14 using System.Runtime.InteropServices;
16 namespace MonoTests.System.Net
20 public class IPEndPointTest
22 private const int MyPort = 42;
23 private const int MyMaxPort = 65535;
24 private const int MyMinPort = 0;
25 private const string MyIPAddressString = "192.168.1.1";
27 private IPAddress ipAddress;
29 private IPEndPoint endPoint1;
30 private IPEndPoint endPoint2;
33 public void GetReady()
35 ipAddress = IPAddress.Parse (MyIPAddressString);
36 ip = ipAddress.Address;
37 endPoint1 = new IPEndPoint (ipAddress, MyPort);
38 endPoint2 = new IPEndPoint (ip, MyPort);
42 public void PublicFields ()
44 Assert.AreEqual (IPEndPoint.MinPort, MyMinPort, "MinPort");
45 Assert.AreEqual (IPEndPoint.MaxPort, MyMaxPort, "MaxPort");
49 public void Constructors ()
52 new IPEndPoint (null, 0);
53 Assert.Fail ("Should raise an ArgumentNullException");
54 } catch (ArgumentNullException) {
57 new IPEndPoint (ipAddress, MyMinPort - 1);
58 Assert.Fail ("Should raise an ArgumentOutOfRangeException #1");
59 } catch (ArgumentOutOfRangeException) {
62 new IPEndPoint (ipAddress, MyMaxPort + 1);
63 Assert.Fail ("Should raise an ArgumentOutOfRangeException #2");
64 } catch (ArgumentOutOfRangeException) {
68 new IPEndPoint (ip, MyMinPort -1);
69 Assert.Fail ("Should raise an ArgumentOutOfRangeException #3");
70 } catch (ArgumentOutOfRangeException) {
73 new IPEndPoint (ip, MyMaxPort + 1);
74 Assert.Fail ("Should raise an ArgumentOutOfRangeException #4");
75 } catch (ArgumentOutOfRangeException) {
80 public void PortProperty ()
83 endPoint1.Port = MyMinPort - 1;
84 Assert.Fail ("Should raise an ArgumentOutOfRangeException #1");
85 } catch (ArgumentOutOfRangeException) {
88 endPoint1.Port = MyMaxPort + 1;
89 Assert.Fail ("Should raise an ArgumentOutOfRangeException #2");
90 } catch (ArgumentOutOfRangeException) {
95 public void CreateAndSerialize()
97 SocketAddress addr = endPoint1.Serialize ();
98 EndPoint endPoint3 = endPoint2.Create (addr);
99 Assert.IsTrue (endPoint1.Equals (endPoint3), "#1");
101 IPAddress ipAddress = IPAddress.Parse ("255.255.255.255");
102 IPEndPoint endPoint4 = new IPEndPoint (ipAddress, MyMaxPort);
103 addr = endPoint4.Serialize ();
104 EndPoint endPoint5 = endPoint2.Create(addr);
105 Assert.IsTrue (endPoint4.Equals (endPoint5), "#2");
106 Assert.AreEqual (endPoint5.ToString (), "255.255.255.255:" + MyMaxPort, "#3");
110 public void Equals ()
112 Assert.IsTrue (endPoint1.Equals (endPoint2), "Equals");
113 Assert.IsTrue (!endPoint1.Equals (new IPEndPoint (ip, MyPort + 1)), "Not Equals");
117 public void GetHashCodeTest ()
119 Assert.AreEqual (endPoint1.GetHashCode(), endPoint2.GetHashCode());
123 public void ToStringTest ()
125 Assert.AreEqual (endPoint1.ToString (), MyIPAddressString + ":" + MyPort, "ToString #1");
126 Assert.AreEqual (endPoint2.ToString (), MyIPAddressString + ":" + MyPort, "ToString #2");