public void GetOAuthClientThrowsIfClientIsNotFound()
        {
            // Arrange
            var client = new Mock <IAuthenticationClient>();

            client.Setup(c => c.ProviderName).Returns("facebook");
            OAuthWebSecurity.RegisterClient(client.Object);

            var anotherClient = new Mock <IAuthenticationClient>();

            anotherClient.Setup(c => c.ProviderName).Returns("hulu");
            OAuthWebSecurity.RegisterClient(anotherClient.Object);

            // Act & Assert
            Assert.Throws <ArgumentException>(() => OAuthWebSecurity.GetOAuthClient("live"));
        }
        public void GetOAuthClientReturnsTheCorrectClient()
        {
            // Arrange
            var client = new Mock <IAuthenticationClient>();

            client.Setup(c => c.ProviderName).Returns("facebook");
            OAuthWebSecurity.RegisterClient(client.Object);

            var anotherClient = new Mock <IAuthenticationClient>();

            anotherClient.Setup(c => c.ProviderName).Returns("hulu");
            OAuthWebSecurity.RegisterClient(anotherClient.Object);

            // Act
            var expectedClient = OAuthWebSecurity.GetOAuthClient("facebook");

            // Assert
            Assert.Same(expectedClient, client.Object);
        }