/// <summary>
 /// Tests whether the action result is <see cref="Microsoft.AspNetCore.Mvc.SignOutResult"/>
 /// with the same authentication properties and schemes as the provided ones.
 /// </summary>
 /// <typeparam name="TActionResult">Type of the action result.</typeparam>
 /// <param name="shouldReturnTestBuilder">Instance of <see cref="IShouldReturnTestBuilder{TActionResult}"/> type.</param>
 /// <param name="properties">Expected authentication properties.</param>
 /// <param name="authenticationSchemes">Expected authentication schemes.</param>
 /// <returns>Test builder of <see cref="IAndTestBuilder"/> type.</returns>
 public static IAndTestBuilder SignOut <TActionResult>(
     this IShouldReturnTestBuilder <TActionResult> shouldReturnTestBuilder,
     AuthenticationProperties properties,
     params string[] authenticationSchemes)
 => shouldReturnTestBuilder
 .SignOut(result => result
          .WithAuthenticationProperties(properties)
          .ContainingAuthenticationSchemes(authenticationSchemes));