Imported Upstream version 4.6.0.125

Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
This commit is contained in:
Xamarin Public Jenkins (auto-signing)
2016-08-03 10:59:49 +00:00
parent a569aebcfd
commit e79aa3c0ed
17047 changed files with 3137615 additions and 392334 deletions

View File

@ -0,0 +1,74 @@
using System;
using System.Threading.Tasks;
class Program
{
static int count;
static int Main ()
{
Test (false).Wait ();
Console.WriteLine (count);
if (count != 110011)
return 1;
count = 0;
Test (true).Wait ();
Console.WriteLine (count);
if (count != 111101)
return 2;
count = 0;
Test2 (false).Wait ();
Console.WriteLine (count);
if (count != 11)
return 3;
count = 0;
Test2 (true).Wait ();
Console.WriteLine (count);
if (count != 1101)
return 4;
return 0;
}
static async Task Test (bool throwTest)
{
try {
count += 1;
await Task.Delay (10);
if (throwTest)
throw new ApplicationException ();
count += 10;
} catch (ApplicationException) {
count += 100;
await Task.Delay (10);
count += 1000;
} finally {
count += 10000;
await Task.Delay (10);
count += 100000;
}
}
static async Task Test2 (bool throwTest)
{
try {
count += 1;
await Task.Delay (10);
if (throwTest)
throw new ApplicationException ();
count += 10;
} catch (ApplicationException) {
count += 100;
await Task.Delay (10);
count += 1000;
} finally {
}
}
}