Imported Upstream version 4.3.2.467

Former-commit-id: 9c2cb47f45fa221e661ab616387c9cda183f283d
This commit is contained in:
Xamarin Public Jenkins
2016-02-22 11:00:01 -05:00
parent f302175246
commit f3e3aab35a
4097 changed files with 122406 additions and 82300 deletions

View File

@ -57,6 +57,7 @@ namespace MonoTests.System.ServiceModel.Dispatcher
serviceHost.AddServiceEndpoint (typeof (IMetadataExchange), MetadataExchangeBindings.CreateMexHttpBinding (), "mex");
serviceHost.Open ();
Thread.Sleep (2000); // let WCF spin up
try {
// client
@ -65,16 +66,24 @@ namespace MonoTests.System.ServiceModel.Dispatcher
var client = new Service1Client (binding, remoteAddress);
var wait = new ManualResetEvent (false);
Exception error = null;
object result = null;
client.GetDataCompleted += delegate (object o, GetDataCompletedEventArgs e) {
if (e.Error != null)
throw e.Error;
Assert.AreEqual ("A", ((DataType1) e.Result).Id, "#1");
wait.Set ();
try {
error = e.Error;
result = e.Error == null ? e.Result : null;
} finally {
wait.Set ();
}
};
client.GetDataAsync ();
if (!wait.WaitOne (TimeSpan.FromSeconds (20)))
Assert.Fail ("timeout");
Assert.IsTrue (wait.WaitOne (TimeSpan.FromSeconds (20)), "timeout");
Assert.IsNull (error, "#1, inner exception: {0}", error);
Assert.AreEqual ("A", ((DataType1) result).Id, "#2");
} finally {
serviceHost.Close ();
}