public async Task CompleteAuthorizationAsync()
        {
            this.MockHandler = async req => {
                Assert.AreEqual(TestUtilities.AccessTokenEndpoint, req.RequestUri);
                Assert.AreEqual(HttpMethod.Post, req.Method);

                string requestContent = await req.Content.ReadAsStringAsync();

                Assert.AreEqual(string.Empty, requestContent);

                var response = new HttpResponseMessage();
                response.Content = new FormUrlEncodedContent(
                    new Dictionary <string, string>
                {
                    { "oauth_token", TestUtilities.AccessToken },
                    { "oauth_token_secret", TestUtilities.AccessTokenSecret },
                });
                return(response);
            };

            var consumer = new OAuth1Consumer();

            consumer.HttpMessageHandler  = this.MockMessageHandler;
            consumer.ConsumerKey         = TestUtilities.ConsumerKey;
            consumer.ConsumerSecret      = TestUtilities.ConsumerSecret;
            consumer.AccessTokenEndpoint = TestUtilities.AccessTokenEndpoint;
            consumer.TemporaryToken      = TestUtilities.TempCredToken;
            consumer.TemporarySecret     = TestUtilities.TempCredTokenSecret;
            await consumer.CompleteAuthorizationAsync(ExpectedCallbackUri.AbsoluteUri);

            Assert.IsNull(consumer.TemporaryToken);
            Assert.IsNull(consumer.TemporarySecret);
            Assert.AreEqual(TestUtilities.AccessToken, consumer.AccessToken);
            Assert.AreEqual(TestUtilities.AccessTokenSecret, consumer.AccessTokenSecret);
        }
        public async Task CompleteAuthorizationAsyncUninitializedTemporaryToken()
        {
            var consumer = new OAuth1Consumer();

            consumer.HttpMessageHandler  = this.MockMessageHandler;
            consumer.ConsumerKey         = TestUtilities.ConsumerKey;
            consumer.ConsumerSecret      = TestUtilities.ConsumerSecret;
            consumer.AccessTokenEndpoint = TestUtilities.AccessTokenEndpoint;
            consumer.TemporarySecret     = TestUtilities.TempCredTokenSecret;
            await consumer.CompleteAuthorizationAsync(ExpectedCallbackUri);
        }