linux-packaging-mono/mcs/tests/test-async-66.cs
Jo Shields fe777c5c82 Imported Upstream version 3.8.0
Former-commit-id: 6a76a29bd07d86e57c6c8da45c65ed5447d38a61
2014-09-04 09:07:35 +01:00

42 lines
593 B
C#

using System;
using System.Threading.Tasks;
class TestFinally
{
static int counter;
async static Task Test (bool throwException)
{
try {
if (throwException)
throw new ApplicationException ();
++counter;
System.Console.WriteLine ();
} finally {
counter += 10;
await Task.Delay (2);
counter += 100;
}
counter += 1000;
}
static int Main ()
{
Test (false).Wait ();
if (counter != 1111)
return 1;
counter = 0;
try {
Test (true).Wait ();
return 2;
} catch (AggregateException) {
}
if (counter != 110)
return 3;
return 0;
}
}