title: Find usages of async where await is not used in Visual Studio or Unit Test
body: <p>I'm currently working on a large application that makes extensive use of the async and await keywords in C#.  Our IO calls are asynchronous pretty much throughout.</p>
  
  <p>When using an async call that does not await (unintentionally, because a developer forgot to use it), it's possible to encounter task cancellations and other undesired behavior as a consequence of not awaiting the result.</p>
  
  <p>E.g. <code>doSomethingAsync().ConfigureAwait(false)</code> vs</p>
  
  <pre><code> await doSomethingAsync().ConfigureAwait(false)
  </code></pre>
  
  <p>Is there any way I can succinctly identify usages of async methods that are not awaiting properly?</p>
  
  <p>Ideally it's something we could unit test (we use DI throughout as well).  Simple method tests are unreliable because the task completing essentially becomes a race condition, where it will succeed often, and fail occasionally. </p>
  
  <p>If unit testing for this is not possible, is there a way to search for and isolate these instances in-mass?</p>