xunit Assert.ThrowsAsync() does not work properly? : <p>So I have a test like the following:</p>

<pre><code>    [Fact]
    public void Test1()
    {
        Assert.ThrowsAsync&lt;ArgumentNullException&gt;(() =&gt; MethodThatThrows());
    }

    private async Task MethodThatThrows()
    {
        await Task.Delay(100);
        throw new NotImplementedException();
    }
</code></pre>

<p>To my surprise, Test1 passes successfully. To make it fail I have to write like this:</p>

<pre><code>Assert.Throws&lt;ArgumentNullException&gt;(() =&gt; MethodThatThrows().Wait());
</code></pre>

<p>What is the purpose of ThrowsAsync(), if it does not work in the scenario above?</p>
