| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
- //
- // SocketPermissionTest.cs - NUnit Test Cases for System.Net.SocketPermission
- //
- // Authors:
- // Lawrence Pit ([email protected])
- // Martin Willemoes Hansen ([email protected])
- //
- // (C) 2003 Martin Willemoes Hansen
- //
- #if !MOBILE
- using NUnit.Framework;
- using System;
- using System.Net;
- using System.Collections;
- using System.Security;
- using System.Security.Permissions;
- namespace MonoTests.System.Net
- {
- [TestFixture]
- public class SocketPermissionTest
- {
- SocketPermission s1;
- SocketPermission s2;
-
- [SetUp]
- public void GetReady ()
- {
- s1 = new SocketPermission(NetworkAccess.Connect, TransportType.Tcp, "12.13.14.15", 80);
- //s1.AddPermission(NetworkAccess.Accept, TransportType.All, "localhost", 8080);
- //s1.AddPermission(NetworkAccess.Accept, TransportType.All, "123", SocketPermission.AllPorts);
- //s1.AddPermission(NetworkAccess.Accept, TransportType.All, "www.ximian.com", SocketPermission.AllPorts);
- //s1.AddPermission(NetworkAccess.Accept, TransportType.All, "120.4.3.2", SocketPermission.AllPorts);
- //s1.AddPermission(NetworkAccess.Accept, TransportType.Tcp, "www.google.com", 80);
- //s1.AddPermission(NetworkAccess.Accept, TransportType.All, "1.*.10.*.99", SocketPermission.AllPorts);
- //s1.AddPermission(NetworkAccess.Accept, TransportType.All, "128.0.0.1", SocketPermission.AllPorts);
- //s1.AddPermission(NetworkAccess.Accept, TransportType.All, "0.0.0.0", SocketPermission.AllPorts);
- s1.AddPermission(NetworkAccess.Accept, TransportType.All, "10.11.4.*", SocketPermission.AllPorts);
- s2 = new SocketPermission(NetworkAccess.Connect, TransportType.All, "12.13.14.15", 80);
- //s2.AddPermission(NetworkAccess.Accept, TransportType.All, "localhost", 8080);
- //s2.AddPermission(NetworkAccess.Accept, TransportType.All, "123", 8080);
- //s2.AddPermission(NetworkAccess.Accept, TransportType.Tcp, "www.google.com", SocketPermission.AllPorts);
- s2.AddPermission(NetworkAccess.Accept, TransportType.All, "213.*.*.*", SocketPermission.AllPorts);
- //s2.AddPermission(NetworkAccess.Accept, TransportType.All, "128.0.0.1", 9090);
- s2.AddPermission(NetworkAccess.Accept, TransportType.Tcp, "216.239.*.*", SocketPermission.AllPorts);
- //s2.AddPermission(NetworkAccess.Accept, TransportType.All, "128.0.0.1", SocketPermission.AllPorts);
- //s2.AddPermission(NetworkAccess.Accept, TransportType.Tcp, "120.4.3.2", 80);
- //s2.AddPermission(NetworkAccess.Accept, TransportType.All, "196.*.*.*", SocketPermission.AllPorts);
- //s2.AddPermission(NetworkAccess.Accept, TransportType.All, "1.*.*.*.99", SocketPermission.AllPorts);
- s2.AddPermission(NetworkAccess.Accept, TransportType.All, "10.11.*.*", 9090);
- //s2.AddPermission(NetworkAccess.Accept, TransportType.All, "10.11.4.7", SocketPermission.AllPorts);
- }
- [Test]
- public void IsSubsetOf ()
- {
- s1 = new SocketPermission(NetworkAccess.Connect, TransportType.Tcp, "12.13.14.15", 80);
- s1.AddPermission(NetworkAccess.Accept, TransportType.All, "10.11.4.*", SocketPermission.AllPorts);
- s2 = new SocketPermission(NetworkAccess.Connect, TransportType.All, "12.13.14.15", 80);
- s2.AddPermission(NetworkAccess.Accept, TransportType.All, "10.11.*.*", 9090);
-
- Assert.IsFalse (s1.IsSubsetOf (s2), "#1");
- Assert.IsFalse (s2.IsSubsetOf (s1), "#2");
- s1 = new SocketPermission(NetworkAccess.Connect, TransportType.Tcp, "12.13.14.15", 80);
- s1.AddPermission(NetworkAccess.Accept, TransportType.All, "10.11.4.*", 9090);
- s2 = new SocketPermission(NetworkAccess.Connect, TransportType.All, "12.13.14.15", 80);
- s2.AddPermission(NetworkAccess.Accept, TransportType.All, "10.11.*.*", 9090);
-
- Assert.IsFalse (s2.IsSubsetOf (s1), "#4");
-
- s1 = new SocketPermission(NetworkAccess.Connect, TransportType.Tcp, "12.13.*.*", 80);
- s2 = new SocketPermission(NetworkAccess.Connect, TransportType.All, "12.13.14.*", 80);
- Assert.IsTrue (s1.IsSubsetOf (s2), "#5");
- Assert.IsFalse (s2.IsSubsetOf (s1), "#6");
- s1 = new SocketPermission(NetworkAccess.Connect, TransportType.Tcp, "12.13.14.15", 80);
- s1.AddPermission(NetworkAccess.Accept, TransportType.Tcp, "10.11.*.*", 9090);
- s2 = new SocketPermission(NetworkAccess.Connect, TransportType.Tcp, "12.13.14.15", 80);
- s2.AddPermission(NetworkAccess.Accept, TransportType.All, "10.11.4.*", SocketPermission.AllPorts);
- Assert.IsTrue (s1.IsSubsetOf (s2), "#7");
- Assert.IsFalse (s2.IsSubsetOf (s1), "#8");
- }
-
- [Test]
- [Category("NotDotNet")]
- public void IsSubsetOf2 ()
- {
- s1 = new SocketPermission(NetworkAccess.Connect, TransportType.Tcp, "12.13.14.15", 80);
- s1.AddPermission(NetworkAccess.Accept, TransportType.All, "10.11.4.*", 9090);
- s2 = new SocketPermission(NetworkAccess.Connect, TransportType.All, "12.13.14.15", 80);
- s2.AddPermission(NetworkAccess.Accept, TransportType.All, "10.11.*.*", 9090);
-
- Assert.IsTrue (s1.IsSubsetOf (s2), "#3: bug in MS.Net");
- }
- [Test]
- public void Intersect ()
- {
- }
-
- [Test]
- public void Union ()
- {
- }
-
- [Test]
- public void Xml ()
- {
- SecurityElement elem = s2.ToXml ();
- s1.FromXml (elem);
- Assert.IsTrue (s2.IsSubsetOf (s1) && s1.IsSubsetOf (s2), "#1");
- }
- }
- }
- #endif
|