|
|
@@ -17,19 +17,6 @@ namespace MonoTests.System.ServiceModel.Dispatcher
|
|
|
[TestFixture]
|
|
|
public class ChannelDispatcherTest
|
|
|
{
|
|
|
- Uri CreateAvailableUri (string uriString)
|
|
|
- {
|
|
|
- var uri = new Uri (uriString);
|
|
|
- try {
|
|
|
- var t = new TcpListener (uri.Port);
|
|
|
- t.Start ();
|
|
|
- t.Stop ();
|
|
|
- } catch (Exception ex) {
|
|
|
- Assert.Fail (String.Format ("Port {0} is not open. It is likely previous tests have failed and the port is kept opened", uri.Port));
|
|
|
- }
|
|
|
- return uri;
|
|
|
- }
|
|
|
-
|
|
|
[Test]
|
|
|
public void ConstructorNullBindingName ()
|
|
|
{
|
|
|
@@ -44,7 +31,7 @@ namespace MonoTests.System.ServiceModel.Dispatcher
|
|
|
var st = cd.ServiceThrottle;
|
|
|
Assert.IsNull (st, "#0");
|
|
|
|
|
|
- var uri = CreateAvailableUri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
+ var uri = new Uri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
ServiceHost h = new ServiceHost (typeof (TestContract), uri);
|
|
|
h.AddServiceEndpoint (typeof (TestContract).FullName, new BasicHttpBinding (), "address");
|
|
|
h.ChannelDispatchers.Add (cd);
|
|
|
@@ -71,7 +58,7 @@ namespace MonoTests.System.ServiceModel.Dispatcher
|
|
|
[Test]
|
|
|
public void Collection_Add_Remove () {
|
|
|
Console.WriteLine ("STart test Collection_Add_Remove");
|
|
|
- var uri = CreateAvailableUri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
+ var uri = new Uri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
ServiceHost h = new ServiceHost (typeof (TestContract), uri);
|
|
|
h.AddServiceEndpoint (typeof (TestContract).FullName, new BasicHttpBinding (), "address");
|
|
|
MyChannelDispatcher d = new MyChannelDispatcher (new MyChannelListener (uri));
|
|
|
@@ -89,7 +76,7 @@ namespace MonoTests.System.ServiceModel.Dispatcher
|
|
|
[Test]
|
|
|
public void EndpointDispatcherAddTest ()
|
|
|
{
|
|
|
- var uri = CreateAvailableUri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
+ var uri = new Uri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
MyChannelDispatcher d = new MyChannelDispatcher (new MyChannelListener (uri));
|
|
|
d.Endpoints.Add (new EndpointDispatcher (new EndpointAddress (uri), "", ""));
|
|
|
}
|
|
|
@@ -97,7 +84,7 @@ namespace MonoTests.System.ServiceModel.Dispatcher
|
|
|
[Test]
|
|
|
[ExpectedException (typeof (InvalidOperationException))]
|
|
|
public void EndpointDispatcherAddTest2 () {
|
|
|
- var uri = CreateAvailableUri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
+ var uri = new Uri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
MyChannelDispatcher d = new MyChannelDispatcher (new MyChannelListener (uri));
|
|
|
d.Endpoints.Add (new EndpointDispatcher (new EndpointAddress (uri), "", ""));
|
|
|
d.Open (); // the dispatcher must be attached.
|
|
|
@@ -107,7 +94,7 @@ namespace MonoTests.System.ServiceModel.Dispatcher
|
|
|
[ExpectedException (typeof (InvalidOperationException))]
|
|
|
public void EndpointDispatcherAddTest3 ()
|
|
|
{
|
|
|
- var uri = CreateAvailableUri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
+ var uri = new Uri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
ServiceHost h = new ServiceHost (typeof (TestContract), uri);
|
|
|
MyChannelDispatcher d = new MyChannelDispatcher (new MyChannelListener (uri));
|
|
|
d.Endpoints.Add (new EndpointDispatcher (new EndpointAddress (uri), "", ""));
|
|
|
@@ -119,7 +106,7 @@ namespace MonoTests.System.ServiceModel.Dispatcher
|
|
|
[ExpectedException (typeof (InvalidOperationException))] // i.e. it is thrown synchronously in current thread.
|
|
|
public void EndpointDispatcherAddTest4 ()
|
|
|
{
|
|
|
- var uri = CreateAvailableUri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
+ var uri = new Uri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
ServiceHost h = new ServiceHost (typeof (TestContract), uri);
|
|
|
var listener = new MyChannelListener (uri);
|
|
|
MyChannelDispatcher d = new MyChannelDispatcher (listener);
|
|
|
@@ -151,7 +138,7 @@ namespace MonoTests.System.ServiceModel.Dispatcher
|
|
|
[ExpectedException (typeof (InvalidOperationException))] // i.e. it is thrown synchronously in current thread.
|
|
|
public void EndpointDispatcherAddTest5 ()
|
|
|
{
|
|
|
- var uri = CreateAvailableUri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
+ var uri = new Uri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
ServiceHost h = new ServiceHost (typeof (TestContract), uri);
|
|
|
var binding = new BasicHttpBinding ();
|
|
|
var listener = new MyChannelListener (uri);
|
|
|
@@ -173,7 +160,7 @@ namespace MonoTests.System.ServiceModel.Dispatcher
|
|
|
[Test]
|
|
|
public void EndpointDispatcherAddTest6 ()
|
|
|
{
|
|
|
- var uri = CreateAvailableUri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
+ var uri = new Uri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
ServiceHost h = new ServiceHost (typeof (TestContract), uri);
|
|
|
var binding = new BasicHttpBinding ();
|
|
|
var listener = new MyChannelListener<IReplyChannel> (uri);
|
|
|
@@ -204,7 +191,7 @@ namespace MonoTests.System.ServiceModel.Dispatcher
|
|
|
[ExpectedException (typeof (InvalidOperationException))]
|
|
|
public void EndpointDispatcherAddTest7 ()
|
|
|
{
|
|
|
- var uri = CreateAvailableUri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
+ var uri = new Uri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
ServiceHost h = new ServiceHost (typeof (TestContract), uri);
|
|
|
var binding = new BasicHttpBinding ();
|
|
|
var listener = new MyChannelListener<IReplyChannel> (uri);
|
|
|
@@ -239,7 +226,7 @@ namespace MonoTests.System.ServiceModel.Dispatcher
|
|
|
// but it makes little sense especially for checking duplicate listen URIs. Duplicate listen URIs should be rejected anyways.
|
|
|
public void EndpointDispatcherAddTest8 ()
|
|
|
{
|
|
|
- var uri = CreateAvailableUri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
+ var uri = new Uri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
ServiceHost h = new ServiceHost (typeof (TestContract), uri);
|
|
|
var listener = new MyChannelListener<IReplyChannel> (uri);
|
|
|
MyChannelDispatcher d = new MyChannelDispatcher (listener);
|
|
|
@@ -284,7 +271,7 @@ namespace MonoTests.System.ServiceModel.Dispatcher
|
|
|
// [Test]
|
|
|
public void EndpointDispatcherAddTest9 () // test singleton service
|
|
|
{
|
|
|
- var uri = CreateAvailableUri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
+ var uri = new Uri ("http://localhost:" + NetworkHelpers.FindFreePort ());
|
|
|
ServiceHost h = new ServiceHost (new TestContract (), uri);
|
|
|
h.Description.Behaviors.Find<ServiceBehaviorAttribute> ().InstanceContextMode = InstanceContextMode.Single;
|
|
|
var listener = new MyChannelListener<IReplyChannel> (uri);
|