public async Task MultipleAuthRequests() { Principal custodian = IdTokenCustodian(); var a1 = custodian.Authenticate(); var a2 = custodian.Authenticate(); await Task.WhenAll(a1, a2); Assert.AreSame(a1.Result, a2.Result); Assert.AreEqual(1, _tokensRequested, "Parallel authentications wait for first one and reuse it results"); }
public async Task GrantCodeFlow() { Principal custodian = GrantCodeCustodian(); var user = await custodian.Authenticate(); Assert.AreEqual("access token 1", user[OAuthApi.AccessToken]); Assert.AreEqual("refresh token 1", user[OAuthApi.RefreshToken]); Assert.AreEqual("test_grant_code", user["request_code"]); Assert.AreEqual("authorization_code", user["request_grant_type"]); }